![](/img/trans.png)
[英]chrome devtool how to inspect form data submitted by form.submit()
[英]How to access key/value data from form.submit()?
在Rails应用程序中,我使用jquery截取表单提交并对数据执行某些功能。
表单响应如下所示:
"object"=>{"parent_id"=>"1", "array_of_strings"=>["string1", "string2", ......]}
我需要获取parent_id
,然后从array_of_strings
获取每个字符串
$('#myForm').submit ->
$this = $(this)
dataArray = $this.serializeArray()
i = 0
while i < dataArray.length
if dataArray[i].name == 'object[parent_id]'
parent = dataArray[i].value
i += 1
i = 0
while i < dataArray.length
if dataArray[i].name == 'object[array_of_strings][]'
string = dataArray[i].value
//do something with parent and string
i += 1
这是最好的方法吗? 遍历整个表单响应以访问键/值似乎过于复杂。 我的jquery / javascript知识有限,我想知道是否有更常用的更好方法?
您可以使用jQuery选择器通过其name
或id
属性引用任何表单字段,并使用jQuery的val()
函数修改字段值以检索或设置表单字段值。 我已经编写了一个完整的示例,该示例显示了如何在表单提交时检索和修改表单值,然后最终将它们(修改后)传递给服务器。 当然,这不是唯一的方法。
var form = $("#myForm");
var parentIdField = form.find("[name=parentId]");
var someOtherField = form.find("[name=sameOtherField]");
form.on("submit",modifyFormFieldsAndSubmit);
function modifyFormFields(submitEvent) {
// retrieve field value
var parentIdFieldValue = parentIdField.val();
// modify parentIdFieldValue ... and set it back to field
parentIdField.val("someNewValue");
// do the same for other fields you want to modify ...
// finally submit modified fields values to server
// note that 'form' reference jQuery extended form and 'form[0]'
// reference underlying HTML form element
form[0].submit();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.