我正在尝试使用简单的代码通过 Javascript 提交表单。当用户按下输入键时,表单应该提交。
我的代码适用于 chrome、safari 和 ie ,但不适用于 FireFox 。最好说事件对象的 charCode 属性返回 0 而不是 13。
JS 适用于 Chrome 和其他浏览器:
var up = document.getElementById('up');
var handler = function(e){
if(e.charCode == 13){
document.getElementById("sendForm").submit();
}
}
up.keypress = addEventListener('keypress',handler);
JS 可在 FireFox 上运行
var up = document.getElementById('up');
var handler = function(e){
if(e.charCode == 0){
document.getElementById("sendForm").submit();
}
}
up.keypress = addEventListener('keypress',handler);
HTML
<form method="POST" id='sendForm' action='http://google.com'>
<textarea rows="4" cols="50" id='up'></textarea>
<input type='submit' name='sub'>
</form
最佳答案
不要使用 keypress 和 e.charCode,而使用 keydown 和 e.keyCode。这将使您在所有浏览器中输入“Enter”时得到“13”。
关于javascript - 在firefox中通过javascript输入ascii键return 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29498655/