提交事件中的点击事件在 chrome 47 中不起作用
Click event inside submit event is not working in chrome 47
我正在尝试使用此代码阻止页面上的提交事件,这样如果我按回车键,它将单击 validate
元素。
$(document).ready(function(){
$("form").submit(function(event){
event.preventDefault();
document.getElementById("validate").click();//alert("Something") works fine here
});
});
但是,当我按下 enter 键时,将焦点保持在任何文本字段上,它会提交带有分配给 form.It 的操作的表单,这并没有像 google 中预期的那样阻止 Submit
事件] chrome 47. 如果我将放置任何 alert
而不是 document.getElementById("validate").click();
那么它工作正常。这是该页面的 html 代码
<td align="center" width="100%">
<input type="button" value=" Next " id="validate" tabindex="4">
<a id="Proceed" href="#" onclick="mojarra.jsfcljs(document.getElementById('form'),{'Form:Proceed':'Form:Proceed'},'');return false"></a>
<input id="replan" type="submit" name="replan" value="Replan" tabindex="4">
</td>
所以,谁能解释一下为什么这在 chrome 的新版本中不起作用?(它在 chrome 39 中运行良好)
注意:id validate
的事件是使用 addEventListener()
分配的。
我在类似的情况下采取了稍微不同的方式,我在文本框上按下按键并执行 preventDefault 以防止提交表单。
$(document).ready(function(){
$("input[type='text']").keydown(function(evtObj){
var code = (e.keyCode ? e.keyCode : e.which);
if (code==13) {
e.preventDefault();
}
});
});
请参阅有关键捕获的讨论 jQuery - keydown / keypress /keyup ENTERKEY detection?
我正在尝试使用此代码阻止页面上的提交事件,这样如果我按回车键,它将单击 validate
元素。
$(document).ready(function(){
$("form").submit(function(event){
event.preventDefault();
document.getElementById("validate").click();//alert("Something") works fine here
});
});
但是,当我按下 enter 键时,将焦点保持在任何文本字段上,它会提交带有分配给 form.It 的操作的表单,这并没有像 google 中预期的那样阻止 Submit
事件] chrome 47. 如果我将放置任何 alert
而不是 document.getElementById("validate").click();
那么它工作正常。这是该页面的 html 代码
<td align="center" width="100%">
<input type="button" value=" Next " id="validate" tabindex="4">
<a id="Proceed" href="#" onclick="mojarra.jsfcljs(document.getElementById('form'),{'Form:Proceed':'Form:Proceed'},'');return false"></a>
<input id="replan" type="submit" name="replan" value="Replan" tabindex="4">
</td>
所以,谁能解释一下为什么这在 chrome 的新版本中不起作用?(它在 chrome 39 中运行良好)
注意:id validate
的事件是使用 addEventListener()
分配的。
我在类似的情况下采取了稍微不同的方式,我在文本框上按下按键并执行 preventDefault 以防止提交表单。
$(document).ready(function(){
$("input[type='text']").keydown(function(evtObj){
var code = (e.keyCode ? e.keyCode : e.which);
if (code==13) {
e.preventDefault();
}
});
});
请参阅有关键捕获的讨论 jQuery - keydown / keypress /keyup ENTERKEY detection?