javascript - AJAX/jQuery 表单提交 shoutbox

标签 javascript jquery ajax

我正在制作一个简单的 shoutbox,用户在其中提交一个表单,该表单通过 jQuery AJAX 请求传递给 PHP,他们的评论会显示在墙上的提要上。

PHP/SQLite 部分工作正常,但我在处理 AJAX 表单时遇到了问题。当我单击提交(发布)时,它会在 shout.php 处正确处理 PHP,但导航窗口也会跳转到 shout.php,而它应该保留在原始页面上...

HTML 格式:

<form id="newPost" action="shout.php" method="post">

Name: <input type="text" id="name" name="name" />

Message: <textarea name="message" id="message"></textarea>

<input type="submit" id="submit" value="Submit" />

</form>

还有 jQuery:

$("#newPost").submit(function() {


var name = $("#name").val();
var message = $("#message").val();
var data    = 'name='+ name +'&message='+ message;


$.ajax({
    type: "POST",
    url: "shout.php",
    data: data,
    success: function(html) {

        console.log(html);

            refresh_shoutbox();
    }
    });
return false;
});

最佳答案

以下是我对更好的可维护性的建议:

$(document).ready(function () {
  $("#newPost").submit(function(e) {
    $.post({
        $('#newPost').attr('action')
      , $('#newPost').serialize()
      , function(html) {
          console.log(html);
          refresh_shoutbox();
        }
    });
    e.preventDefault();
  });
});

关于javascript - AJAX/jQuery 表单提交 shoutbox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8785051/

相关文章:

javascript - 填充数组中缺失的数值

jquery - 将子元素 (div) 添加到父元素 (div),我怎样才能阻止每个子元素影响它之后的子元素的最高值?

javascript - 单击按钮时如何避免刷新asp.net中的文本框值?

jquery - jquery UI datepicker 中 getDate 方法之后的 parsedate

html - 模态关闭,但滚动条不回来

javascript - Select2 js 插件无法选择任何选项

javascript - CSS:除非页面滚动,否则渐变标题 100% 屏幕宽度很好

Javascript - 使用 anchor 从外部链接显示/隐藏表格?

javascript - Javascript 中的提升函数和变量有问题,有人可以帮助我吗?

php - balita 主题/nivo slider 过渡