在我的HTML页面中,我有一个文本框供用户输入关键字进行搜索。当他们点击搜索按钮时,JavaScript函数将生成一个网址并在新窗口中运行。
当用户用鼠标单击搜索按钮时,JavaScript函数工作正常,但当用户按回车键时,没有响应。
function searching(){
var keywordsStr = document.getElementById('keywords').value;
var cmd ="http://XXX/advancedsearch_result.asp?language=ENG&+"+ encodeURI(keywordsStr) + "&x=11&y=4";
window.location = cmd;
}<form name="form1" method="get">
<input name="keywords" type="text" id="keywords" size="50" >
<input type="submit" name="btn_search" id="btn_search" value="Search"
onClick="javascript:searching(); return false;" onKeyPress="javascript:searching(); return false;">
<input type="reset" name="btn_reset" id="btn_reset" value="Reset">
</form>发布于 2012-12-21 17:22:48
使用onkeypress。检查按下的键是否为enter (keyCode = 13)。如果是,则调用searching()函数。
HTML
<input name="keywords" type="text" id="keywords" size="50" onkeypress="handleKeyPress(event)">JAVASCRIPT
function handleKeyPress(e){
var key=e.keyCode || e.which;
if (key==13){
searching();
}
}下面是一个代码片段,展示了它的实际应用:
document.getElementById("msg1").innerHTML = "Default";
function handle(e){
document.getElementById("msg1").innerHTML = "Trigger";
var key=e.keyCode || e.which;
if (key==13){
document.getElementById("msg1").innerHTML = "HELLO!";
}
}<input type="text" name="box22" value="please" onkeypress="handle(event)"/>
<div id="msg1"></div>
https://stackoverflow.com/questions/13987300
复制相似问题