我有一个现有的HTML表单,我正在尝试更新以使用jQuery.load().如何将表单的所有元素作为POST参数传递,而不是必须指定要传递的参数?
表单元素由脚本动态创建,元素的数量以及元素的名称在很大程度上变化,以至于指定通过AJAX/POST传递哪些参数是不切实际的.是否有一种简单的方法可以传递给jQuery.load()<form></form>标签中的所有元素,就像传统上提交表单一样?
Ros*_*one 28
简单:当您收集表单数据并将其作为第二个参数传递给load(),使用serializeArray(data)和不使用时serialize(data),正如当前接受的答案建议的那样.
serialize()返回一个字符串,然后serializeArray()返回一个对象.
load()如果数据是对象,则发送POST.如果data是字符串,则load()发送GET.
der*_*aug 19
您可以使用.serialize()序列化表单的所有输入来提交jQuery.load()调用.
$('form').serialize()
Run Code Online (Sandbox Code Playgroud)
例如,使用jQuery.load()(只有GET,除非你传递一个数据对象,然后POST)
$.load(
'postTo.php',
$('#yourFormId').serialize(),
complete(responseText, textStatus, XMLHttpRequest){
//do your processing after the fact
}))
Run Code Online (Sandbox Code Playgroud)
使用,, jQuery.ajax()您可以进行POST
$.ajax({
'url': 'postTo.php',
'type': 'POST',
'data': $('#yourFormId').serialize(),
'success': function(result){
//process here
}
});
Run Code Online (Sandbox Code Playgroud)
请参阅:http://api.jquery.com/jQuery.ajax/
| 归档时间: |
|
| 查看次数: |
21580 次 |
| 最近记录: |