如何通过单击提交按钮或按Enter键提交文本区域?

时间:2016-02-22 21:36:49

标签: jquery html

目前,我只能通过点击提交按钮提交textarea。我还看到了多个帖子,例如this one,关于如何通过按Enter键提交表单。但是,我想知道是否有办法在一个函数中实现它们。

目前,我有:$('form[name=userForm]').on('submit', function() {...}

2 个答案:

答案 0 :(得分:1)

您可以通过用空格分隔多个事件侦听器来调用多个事件侦听器。

在这种情况下,我们正在侦听keypressclick事件,并传入事件参数以侦听输入的按钮。

<input type="submit" id="submit-btn">Submit</button>

$(function(){
    $("#submit-btn").on("keypress click", function(event){
        var formValue = $("textarea").val();
        if (event.which === 13 || event.type === "click") {
           // Form submission code goes here
        }
    });
});

您也可以使用两个功能。在第二个内部,您可以选择提交按钮的点击事件。

$("#submit-btn").click(function(){
    var formValue = $("textarea").val();
        // Submission logic goes here.
    })

    // Trigger the submit button's click event

    $("textarea").keypress(function(event) {
        if (event.which === 13) {
            $("#submit-btn").click();
        }
    });

答案 1 :(得分:0)

定义你的提交功能并重复使用它:

var submitForm = function() {...};

$('form[name=userForm]').on('submit', submitForm);

$('textarea').keypress(function (e) {
  if (e.which == 13) {
    submitForm();
  }
});