and*_*ers 70 html forms jquery
我有一个HTML表单,只有一个submit输入,但也有各种button元素.当用户按下"回车"键时,我希望它实际上提交表单,但是(至少在Chrome 15中)我发现它触发了第一个button(因为它发生在HTML之前,而不是submit输入, 我猜).
我知道通常你不能强迫浏览器支持特定的submit输入,但我真的认为他们更喜欢submit输入button元素.是否可以对HTML进行一些小的调整以使其工作,或者我将不得不采用某种Javascript方法?
这是HTML的粗略模型:
<form action="form.php" method="POST">
<input type="text" name="field1"/>
<button onclick="return myFunc1()">Button 1</button>
<input type="submit" name="go" value="Submit"/>
</form>
Run Code Online (Sandbox Code Playgroud)
Jes*_*era 128
您不需要JavaScript来选择默认的提交按钮或输入.您只需要标记它type="submit",其他按钮标记它们type="button".在你的例子中:
<button type="button" onclick="return myFunc1()">Button 1</button>
<input type="submit" name="go" value="Submit"/>
Run Code Online (Sandbox Code Playgroud)
Ofi*_*chy 31
你可以使用jQuery:
$(function() {
$("form input").keypress(function (e) {
if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) {
$('button[type=submit] .default').click();
return false;
} else {
return true;
}
});
});
Run Code Online (Sandbox Code Playgroud)
试试这个,如果按下 Enter 键,您可以像这样捕获它,例如,我前几天开发了一个答案html 按钮指定 selected,看看这是否有帮助。
例如指定表单名称,yourFormName那么您应该能够提交表单而无需关注表单。
document.onkeypress = keyPress;
function keyPress(e){
var x = e || window.event;
var key = (x.keyCode || x.which);
if(key == 13 || key == 3){
// myFunc1();
document.yourFormName.submit();
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
135721 次 |
| 最近记录: |