繁体   English   中英

如何使用jQuery提交表单而不刷新?

[英]How can I use jQuery to submit a form without refreshing?

我有这种形式:

<form id="myform" name="myform" action="test.php" method="post">
<input type="text" name="shout-in" id="proShoutIn" maxlength="80" />
<a href="#" id="add_shout"><img src="post.gif"/></a>
</form>

我如何做一个ajax发布,以便我可以使用if (isset($_POST['shout-in'])){..do something..} 我需要获取在<input>输入的值并对其进行处理。

有任何想法吗? 谢谢

$('#add_shout').click(function () {
    var $form=$('#myform');
    $.post($form.attr('action'), $form.serialize());
});

使用$.post()的第三个参数(可选),您可以指定一个回调函数,该函数将接收作为其唯一参数发送回的任何内容。 它会在AJAX查询成功完成后运行(因此您可以根据AJAX调用等进行DOM修改)。

您可能还想阻止默认表单提交(在许多浏览器中,在输入字段中按Enter都会触发它)并运行AJAX提交:

$('#myform').submit(function (e) {
     $('#add_shout').click();
     e.preventDefault();
});
$.post("test.php", $("#myform").serialize(),
    function(data) {
      // do something with the response
    }
);
   $("#myform").submit(function (e) {
      $.post(this.action, $(this).serialize(), function (data) {
         //handle response
      });
      //prevent form from submitting.  In jQuery, do not use return false
      e.preventDefault();
   }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM