1

我构建了一个简单的表单,只要您按 ENTER 就提交。它工作正常,但是每当我尝试在其中运行.post时,当我按 Enter 而不是提交时,textarea 中的文本就会中断。

我所说的打破是什么意思


textarea 中的文本是
| 打破


这工作正常

// Submit comment on ENTER key pressed
    $("textarea[name=comment_body]").keypress(function(event) {
        if (event.which == 13) {

            alert(comment_body);
        }
    });

这不

// Submit comment on ENTER key pressed
    $("textarea[name=comment_body]").keypress(function(event) {
        if (event.which == 13) {        
            var comment_body = $(this).val();    
            $.post("comments.php", {
                comment_body: comment_body
            }
            alert(comment_body);
        }
    });

如何在其中使用 jQuery .post 而不会失败?

4

2 回答 2

0

你应该这样做:

$("textarea[name=comment_body]").keypress(function(event) {
    if (event.which == 13) {        
        var comment_body = $(this).val();    
        $.post("comments.php", {cb: comment_body}, function(data){
            alert(data.cb);
        }, "json");
});

在我看来,您正在 通过jQuery 方法将数据发布{comment_body:remove_comment}到其中,但您没有使用其中的回调函数。comments.php$.post()

您发布的任何内容都可以在回调函数中传递comment.php的参数中使用。data

于 2013-03-30T14:05:42.577 回答
0

post 的语法是:$.post(URL,data,callback);

$.post("comments.php",
   { 
     comment_body: remove_comment
   }, 
   function(result){
        alert(result.comment_body);
});
于 2013-03-30T14:09:19.140 回答