Php AJAX-传递整个表单+;表单外的一个或多个数据
我知道如何将整个表单传递给AJAXPhp AJAX-传递整个表单+;表单外的一个或多个数据,php,jquery,ajax,forms,Php,Jquery,Ajax,Forms,我知道如何将整个表单传递给AJAX data: $(this).serialize() 但是,我不知道如何将表单+值传递到表单之外 例: 这是可行的,但是表单会变成查询字符串而不是数组 Array ( [form] => fullname=&contactnum=&email=&source= ) 应该是这样的: Array ( [fullname] => [contactnum] => [email] => [source] => )
data: $(this).serialize()
但是,我不知道如何将表单+值传递到表单之外
例:
这是可行的,但是表单会变成查询字符串而不是数组
Array ( [form] => fullname=&contactnum=&email=&source= )
应该是这样的:
Array ( [fullname] => [contactnum] => [email] => [source] => )
有人帮我做这个吗?谢谢。如您所见-
serialize()
返回简单字符串,这就是为什么您可以将其与所需值连接起来:
data: $(this).serialize() + "&id=" + id + "&uniq=" + uniq,
<input type="hidden" name="id" value="your value" />
<input type="hidden" name="uniq" value="your other value" />
另一种解决方案是使用所需的值在表单上创建隐藏输入:
data: $(this).serialize() + "&id=" + id + "&uniq=" + uniq,
<input type="hidden" name="id" value="your value" />
<input type="hidden" name="uniq" value="your other value" />
然后它们也将被
序列化
d,而不做任何其他操作。如您所见-serialize()
返回简单字符串,这就是为什么您可以将其与所需值连接起来:
data: $(this).serialize() + "&id=" + id + "&uniq=" + uniq,
<input type="hidden" name="id" value="your value" />
<input type="hidden" name="uniq" value="your other value" />
另一种解决方案是使用所需的值在表单上创建隐藏输入:
data: $(this).serialize() + "&id=" + id + "&uniq=" + uniq,
<input type="hidden" name="id" value="your value" />
<input type="hidden" name="uniq" value="your other value" />
然后,它们也将被
序列化
d,而不做任何其他事情。您可以使用多种方法获得解决方案。
Serialize返回字符串,以便可以作为
data: $(this).serialize() + "&id=" + id + "&uniq=" + uniq,
在ajax中,您可以独立于数据传递值,如下所示:
var id = $('[name="formid"]').attr("id");
var uniq = $('[name="formid"]').data('uniquecode');
$.ajax({
url:'',
data : {
data : data,
id : id,
uniq : uniq,
},
});
您可以将隐藏字段用作
<input type="hidden" name="id" value="your value" />
<input type="hidden" name="uniq" value="your other value" />
您可以使用在php后端获取数组。您可以使用多种方法获取解决方案。 Serialize返回字符串,以便可以作为
data: $(this).serialize() + "&id=" + id + "&uniq=" + uniq,
在ajax中,您可以独立于数据传递值,如下所示:
var id = $('[name="formid"]').attr("id");
var uniq = $('[name="formid"]').data('uniquecode');
$.ajax({
url:'',
data : {
data : data,
id : id,
uniq : uniq,
},
});
您可以将隐藏字段用作
<input type="hidden" name="id" value="your value" />
<input type="hidden" name="uniq" value="your other value" />
您可以在php的后端使用获取数组
FormData
对象就是为这种目的而设计的-可以直接分配一个表单并在通过ajaxIndeed发送之前附加您想要的任何项目。当我有需要附加到表格中的文档时,它非常有用。但是我没有尝试在传递多个数据时使用它。FormData
对象就是为这种目的而设计的-可以直接分配一个表单,并在通过ajaxIndeed发送之前附加您想要的任何项目。当我有需要附加到表格中的文档时,它非常有用。但是我没有尝试在传递多个数据时使用它。我喜欢parse\u str
函数。这对我很管用。虽然它在我的代码中至少增加了2行,但谁在乎呢?哈哈哈。谢谢很高兴听到这个消息:)我喜欢parse\u str
函数。这对我很管用。虽然它在我的代码中至少增加了2行,但谁在乎呢?哈哈哈。谢谢很高兴听到这个消息:)我也觉得这很有帮助。我可以把两个答案都标为接受。哈哈哈。无论如何,我接受这个答案。我也觉得这很有帮助。我可以把两个答案都标为接受。哈哈哈。无论如何,我接受这个答案。