查看 Action.Submit 的源代码,我试图找出 ext 将表单字段附加到参数的位置。
我不想发送每个字段作为单独的参数,而是发送如下内容:
formObj:{field1:value, field2:value}
目前,这些值中的每一个都与任何自定义/基本参数一起简单地添加到参数列表中。
这些表单域在哪里添加以便我可以更改此行为?
谢谢。
如果你真的想跟踪创建参数列表的过程,你可以参考Ext.form.Action.getParams
。
您还应该考虑Ext.form.BasicForm.getValues
,因为它返回的正是您想要的结果,唯一的问题是您需要手动发送它,例如使用Ext.Ajax.request
.
我不确定你的覆盖需要是什么样子,但你可能想看看Ext.Ajax.request()
(在 Core / Connection.js 中)。发布表单时,字段在此代码块中被序列化:
if(form = Ext.getDom(o.form)){
url = url || form.action;
serForm = Ext.lib.Ajax.serializeForm(form);
p = p ? (p + '&' + serForm) : serForm;
}