Php 有没有一种方法可以使用jQuery提交表单而不需要详细的字段分解?
我使用jQuery在链接上执行基于AJAX的页面重新加载—它们会打开“Loading…”div窗口,然后在内容返回并加载内容时关闭它。这完全符合预期 我在我的项目中有几个不同的表单,我想使用相同的方法提交-提交时打开“Loading…”div窗口,然后在内容返回时关闭它。有没有办法不用为每个表单编写自定义函数就可以做到这一点?我看到的示例要求您获取每个表单字段并对其进行编码,然后用ajax方法传递它。一些表单只有几个字段,其他表单有很多字段,因此这将是一个繁琐的过程。我希望它只抓取表单中的所有字段,并在字段名称下提交它们Php 有没有一种方法可以使用jQuery提交表单而不需要详细的字段分解?,php,jquery,ajax,Php,Jquery,Ajax,我使用jQuery在链接上执行基于AJAX的页面重新加载—它们会打开“Loading…”div窗口,然后在内容返回并加载内容时关闭它。这完全符合预期 我在我的项目中有几个不同的表单,我想使用相同的方法提交-提交时打开“Loading…”div窗口,然后在内容返回时关闭它。有没有办法不用为每个表单编写自定义函数就可以做到这一点?我看到的示例要求您获取每个表单字段并对其进行编码,然后用ajax方法传递它。一些表单只有几个字段,其他表单有很多字段,因此这将是一个繁琐的过程。我希望它只抓取表单中的所有字
对此有任何见解都将不胜感激 其实很简单,你可以这样做:
$('form').serialize();
显然,您希望将其发送到表单,但如果在选择表单标记后调用serialize,它将为您序列化表单。然后,您可以在ajax调用中使用它。看起来您是在寻找类似的东西。它基本上是jQuery的实用函数,用于为AJAX调用或GET查询字符串编码表单元素 使用它可以根据表单元素的
name
属性获得类似于myinput=somevalue&myotherinput=someothervalue
的内容。您可以将其放入您对服务器进行的任何调用中,只要它们能够识别格式(例如,与JSON数据或标量字符串之类的内容相比)。您读过这篇文章吗
您可以这样使用
serialize()
$('#formId').serialize();
可能有一种方法可以使用$.serialize()函数。您可以编写一个函数,在提交表单时执行。例如,如果您有三个id为“form1”、“form2”和“form3”的表单:
... 这是一个AJAX调用,如我所说。:)+1@hippo~z~啊,我有点明白你的意思。让我帮你编辑一下D
$('#formId').serialize();
$(document).ready(function()
{
$('#form1, #form2, #form3').submit(sendData);
});
function sendData()
{
var dataString=$(this).serialize();
$.ajax({
url: "url_to_send.php",
data: dataString
});
return false;
}