我正在尝试与聊天室合作,一些用户希望在输入时提交一项功能。

我目前有此代码:

表格html:

<form id="send-message-area" name="send-message-area" method="post" action="">
    <textarea id="sendie" name="sendie" maxlength = '255'></textarea>
    <input type="submit" name="sendieButton" id="sendieButton" value="Send" />
</form>


jQuery的:

$(document).ready(function(){

$("textarea").keyup(function(event){
    if(event.keyCode == 13){
        //$("form").submit();
        $("form").trigger("submit");
    }
});

});


但是,当按回车键时,确实会提交,但不会发送任何数据。
当按下提交按钮时,它工作得很好。

我已经尝试过$("form").submit();,但是它完全一样。

编辑:

我认为问题出在我的PHP中。

if(isset($_POST['sendieButton'])){

    $fromID = $brugernavn;
    $fromMsg = $_POST['sendie'];

    sendMsg($fromID, $fromMsg);

};


但是,当更改为检查$ _POST ['send-message-area']时,它根本不起作用。

最佳答案

您单击按钮之前,不会提交您的按钮值。所以要么触发它的点击事件

$(document).ready(function(){

    $("textarea").keyup(function(event){
        if(event.keyCode == 13){
            //$("form").submit();
            $("#sendieButton").trigger("click");
        }
    });

});


或只检查是否设置了textarea值,或者不检查PHP

if(isset($_POST['sendie'])){

    $fromID = $brugernavn;
    $fromMsg = $_POST['sendie'];

    sendMsg($fromID, $fromMsg);
};

07-28 03:42
查看更多