我有一个按钮如下:
<input type="submit" value="click me" id="clickme" />
我希望按钮在点击并输入(键盘描边)上执行操作。
检查我的小提琴: JSFIDDLE
它适用于点击但不适用于输入。
以下提供的SNIPPET代码
$('#clickme').keypress(function(e){
if (e.which == 13){ //Enter key pressed
alert('Enter pressed: Submitting the form....');
}
});
$('#clickme').click(function(e){
alert("clicked");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<input type="submit" value="click me" id="clickme" />
答案 0 :(得分:2)
它工作正常,但按Enter键时需要关注按钮。
例如,先单击它然后按Enter键。
按钮似乎是表单的一部分。
如果您想在提交表单时触发事件,请使用:
$('#form').on('submit', function(){
});
如果你真的只想让按钮/表格在网站的任何地方输入:
$(document).keypress(function(e) {
if(e.which == 13) {
$('#form').submit();
}
});
答案 1 :(得分:2)
使用它:
$(document).ready(function(){
$('#clickme').keypress(function(e){
if(e.which == 13){//Enter key pressed
alert('Enter pressed: Submitting the form....');
}
});
$('#clickme').click(function(e){
alert("clicked");
});
});
答案 2 :(得分:1)
按钮的按键事件仅在聚焦时发生。这只发生在点击按钮上。您需要在文档本身或表单的提交事件上绑定keypress事件才能使其工作:
$(document).keypress(function(e) {
if(e.which == 13) {
alert('Enter pressed: Submitting the form....');
}});
如果提交表单,您不需要有两个单独的事件。表单提交事件将同时处理按键和点击提交:
$('form').submit(function(e) {
alert('Enter pressed: Submitting the form....');
});
<强> Working Demo 强>
使用下面的代码段演示代码
$(document).keypress(function(e) {
if(e.which == 13) {
alert('Enter pressed: Submitting the form....');
}
});
$('#clickme').click(function(e){
alert("clicked");
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<input type="submit" value="click me" id="clickme" />
&#13;
答案 3 :(得分:1)
我认为您正在寻找JQuery submit
函数,如下所示:
$('#myForm').submit(function () {
alert("Submitted");
});
注意:对于原始代码,该keypress
事件的Enter
事件必须处于关注状态