用jquery.ajax执行php post

时间:2012-06-26 12:34:18

标签: php jquery post

我正在尝试运行this tutorial

我还没有实现验证部分,但我的问题不应该基于此。这是我的代码:

<script type="text/javascript">
$("#submitbutton").click(function () {
  var content = $.("#contentarea").val();
  $.ajax({
    type: "POST",
    url: "addArticle.php",
    data: content,
    success: $.("#addArticle").append("<p>ok</p>")
  });
  return false;
})
</script>

如在演示中所见,它不应该刷新页面,因为返回false语句,也应该做一个帖子而不是get。但它都没有。它将继续重新加载页面,并将给定内容作为参数附加到URL。我如何防止这个/我的失败在哪里?

Here is the whole thing

2 个答案:

答案 0 :(得分:3)

您所遵循的教程不正确。提交表单的方法多于单击其提交按钮(例如,您可以在文本字段中按 return )。您需要将代码绑定到表单的submit()事件而不是按钮的click()事件。

完成此操作后,使用浏览器中的调试器检查提交表单时是否实际运行代码。

此外,success参数必须是一个函数:

submit: function() { $("#addArticle").append("<p>ok</p>") } 

编辑:此外,您已多次编写$.(而不是$(。这将导致运行时错误,这可能导致阻止提交的代码失败。

答案 1 :(得分:0)

很好......

之后不那么紧张,它有效。 我决定使用jquery form plugin

但是,我打赌你会喜欢它,我不知道它为什么会起作用:

        <script> 

        $(document).ready(function() { 

            $('#addForm').ajaxForm(function() { 
                alert("ok"); 
            }); 
        }); 
    </script> 

    <div id="addArticle">
        <form id="addForm"  method="post" action="addArticle.php">

                <textarea id="contentarea" required="required" name="content">    </textarea>
                <br />
                <input type="submit" id="submitbutton">
        </form>
    </div>

我想作者已经做了相当不错的工作,只是想告诉我解决那些在google上搜索该问题的未来人。