jQuery的form.serialize和其他参数
是否有可能通过一个$.ajax()
请求发送一个form.serialize()
对象和其他参数?
例:
$.ajax({ type : 'POST', url : 'url', data : { $('#form').serialize(), par1 : 1, par2 : '2', par3: 232 } }
如果不是与其他参数一起提交表单的最佳方式。
谢谢
serialize()
有效地将表单值转换为有效的查询string,因此您可以简单地追加到string:
$.ajax({ type : 'POST', url : 'url', data : $('#form').serialize() + "&par1=1&par2=2&par3=232" }
或者,如果将参数存储在某个对象variables中,则可以使用form.serialize()和$ .param(object)。 用法是:
var data = form.serialize() + '&' + $.param(object)
我不知道,但以上都没有为我工作,然后我用这个,它的工作:
在窗体的序列化数组中,它被存储为键值对
我们在表单variables中将新值或新值推入,然后我们可以直接传递这个variables。
var form = $('form.sigPad').serializeArray(); var uniquekey = { name: "uniquekey", value: $('#UniqueKey').val() }; form.push(uniquekey);
你可以创build一个使用jQuery的辅助表单,并使用其他表单的内容,然后添加其他的参数,所以你只需要在ajax调用中序列化它。
function createInput(name,value){ return $('<input>').attr({ name: name, value: value }); } $form = $("<form></form>"); $form.append($("#your_form input").clone()); $form.append(createInput('input_name', 'input_value')); $form.append(createInput('input_name_2', 'input_value_2')); .... $.ajax({ type : 'POST', url : 'url', data : $form.serialize() }
我在声明中解决了这个问题。 用同一个GET方法发送数据
$.ajax({ url: 'includes/get_ajax_function.php?value=jack&id='+id, type: 'post', data: $('#b-info1').serializeArray(),
并用$ _REQUEST ['value']或$ _GET ['id']获取值