1.input回车事件不执行导致页面刷新
场景:在文本框中输入关键字按回车,页面自动刷新了
<form name="keywordForm" method="post" action=""> <p id="profile_nav"> <label for="profile"> 关键字搜索: </label> <input style="width:80; height:20" type="text" name="keyword" onkeypress="searchKeywordKeyboard(event)" /> <input type="button" value="搜索" onClick="searchKeyword()"> </p> </form>
解决方法1:
一个表单下,如果只有一个文本框时,按下回车将会触发表单的提交事件。 既然是只有一个文本框才会出问题,那么可以加一个隐藏的文本框
解决方法2:(推荐)
<form name="keywordForm" method="post" action="" onsubmit="return false;"> 就是在表单 form 后面加上一个 onsubmit 事件,返回 false,来阻止 form 提交。
解决方法3:(不推荐)
document.onkeydown=function(e){ var e = e || event; var currKey = e.keyCode || e.which || e.charCode;//支持IE,FireFox if (currKey == 13) { return false; } }
解决方法4:
<input type="text" onkeydown="return ClearSubmit(event)" /> function ClearSubmit(e) { if (e.keyCode == 13) { return false; } }