目前我只能通过单击提交按钮来提交textarea
。我还看到了多篇帖子,例如这篇,关于如何通过按 Enter 提交表单。但是,我想知道是否有办法在一个函数中实现两者。
目前,我有: $('form[name=userForm]').on('submit', function() {...}
.
您可以在一个函数中调用多个事件侦听器,方法是用空格分隔它们。
在本例中,我们将侦听keypress
事件和click
事件,并传入事件参数以侦听输入了哪个按钮。
<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();
}
});
定义你的提交函数并重用它:
var submitForm = function() {...};
$('form[name=userForm]').on('submit', submitForm);
$('textarea').keypress(function (e) {
if (e.which == 13) {
submitForm();
}
});