如何使用 ExtJS 3.1.0 获取 FormPanel 来 POST JSON?
默认情况下,当您调用 ExtJS 3.1.0 中的 FormPanel
函数时,它会将表单字段发布为 application/x-www-form-urlencoded
。
有什么办法让它改为发布 JSON 吗?
By default, a FormPanel
in ExtJS 3.1.0 posts the form fields as application/x-www-form-urlencoded
when you call its submit() function.
Is there any way to get it to post JSON instead?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您可以使用
getValues()
提取值,然后使用Ext.encode()
它们并手动执行Ext.Ajax.request({}) 也包含此数据。
You can use
getValues()
to pull the values and thenExt.encode()
them and manually do anExt.Ajax.request({})
with this data as well.您可能希望扩展 Ext.form.Action.Submit 来将参数编码为 JSON,而不是在正文中对它们进行 url 编码。
You probably want to extend
Ext.form.Action.Submit
to encode the params as JSON instead of url-encoding them in the body.您可以覆盖
Ext.form.Action.Submit.run
。就像这样:
You can override
Ext.form.Action.Submit.run
.Just like this:
只需输入参数
或
在设置
App.formPanel.url = '/Product/Save'
之前Just put in params
or
Before set a
App.formPanel.url = '/Product/Save'