3

我有一个 Jquery 提交 textarea,现在我想设置 textarea 提交而不提交按钮。只需使用输入键。

<textarea id="ctextarea"></textarea>

这是JS:

$('.comment_button').live("click",function() 
{
    var ID = $(this).attr("id");
    var uid = $("#uid").val();
    var comment= $("#ctextarea"+ID).val();
    var dataString = 'comment='+ comment + '&msg_id=' + ID + '&uid=' + uid;

    if(comment=='')
    {
    $('#ctextarea').html("").fadeIn('slow');
    $("#ctextarea"+ID).focus();
    }
    else if (!$.trim($("#ctextarea"+ID).val()))
    {
        $("#ctextarea"+ID).focus();
    }
    else
    {
    $.ajax({
    type: "POST",
    url: "comment_ajax.php",
    data: dataString,
    cache: false,
    success: function(html){
    $("#commentload"+ID).append(html);
    $("#ctextarea"+ID).val('');
    $("#ctextarea"+ID).focus();
     }
 });
}
return false;
});

我已经搜索了教程并找到了,但我很困惑在哪里可以将代码放在我的 JS 代码中。

有人可以给出想法吗?感谢您的帮助。

4

2 回答 2

3
$('#ctextarea').on('keyup', function(e){
    if(e.which == 13 || e.keyCode == 13){
        //enter key pressed.. 
    }
});
于 2012-11-19T06:12:16.973 回答
0

您可以订阅 keydown/keyup 事件并在事件处理程序中提交表单:

var KEY_ENTER = 13;
$('#ctextarea').keyup(function (event) {
    if (event.keyCode === KEY_ENTER) {
        $('form').submit();
        // Or perform any necessary ajax calls here
    }
});
于 2012-11-19T06:11:41.880 回答