ajax未捕获ReferenceError:在HTMLButtonElement上未定义发布。<anonymous>

时间:2019-03-10 08:15:09

标签: javascript php ajax

不知道它可能是什么。请帮助我发布此ajax评论。我以前从未做过。输入文字和一些ID的HTML表单:

 <form id="send_comment" method="POST" action="write_comment.php">
                        <input hidden type="text" id="c_post_id" name="c_post_id" value="<?=$_GET["id"]?>">
                        <input hidden type="text" id="c_user_id" name="c_user_id" value="<?=$user_id?>">
                        <div class="form-group shadow-textarea">
                          <textarea class="form-control z-depth-1" type="text" id="c_text" rows="3" placeholder="Write comment here..." name="c_text" required pattern="^[a-zA-Z0-9\s]+$"></textarea>
                        </div>
                      <div class="col-md-12 text-center">
                          <button id="make_comment" class="btn btn-default" name="make_comment" type="submit" value="Submit"><i class="fas fa-check" style="font-size: 35px;"></i></button>
                      </div>
                    </form>

PHP处理:

if($_POST["make_comment"]) {
       $c_post_id = $_POST["c_post_id"];
       $c_user_id = $_POST["c_user_id"];
       $c_text = $_POST["c_text"];
       $date = date("m/d/y G:i:s<br>", time());

       $sql = "INSERT INTO `comments` VALUES ('$c_post_id','$c_user_id',null,'$c_text','$date')";
          if ($connect->query($sql) === TRUE) {
              header("Location: http://thecobnmod.com/post.php?id=$c_post_id");
          }
          else {
              exit( "Error: " . $sql . "<br>" . $conn->error);

          }
    }

JS ajax:

function funcSuccess (data) {
        $("#comment_ajax").text(data);
    }
    function funcBefore (){
        $("#comment_ajax").text("Loading comment...");
    }
    $(document).ready(function(){
        $("#make_comment").bind("click", function () {
            event.preventDefault();
            $.ajax({
            post: $("#c_post_id").val(),
            user: $("#c_user_id").val(),
            text: $("#c_text").val(),
            url: "write_comment.php",
            type: "POST",
            data: {
                c_post_id:post, 
                c_user_id:user, 
                c_text:text
            },
            dataType: "html",
            beforeSend: funcBefore,
            success: funcSuccess
            });
        });
    });

POST ID来自GET请求到输入字段。我认为这可能是一个问题,但不是。现在我真的不知道怎么了。请帮忙。

1 个答案:

答案 0 :(得分:0)

我强烈建议您查阅文档:Ajax doc

Ajax没有post属性AFAIK! 我不确定您要做什么,但这是一个简单的ajax示例:

$.ajax({
    url: 'here/is/some/url',
    type: 'post',
    data: {
             some_key: 'value1',
             other_key: 'value2',
             /*...*/
          },

    dataType: 'html',
    beforeSend: function() {/*...*/}
    success: function(result) {/*...*/},
    error: function(error) {/*...*/}
});