Javascript Onkeypress enter事件未触发
我的onkeypress事件在我的网站上的搜索栏上不起作用。以下是我的javascript和html代码:Javascript Onkeypress enter事件未触发,javascript,Javascript,我的onkeypress事件在我的网站上的搜索栏上不起作用。以下是我的javascript和html代码: window.onload = function() { document.getElementById("SearchText").value = getParameterByName("s"); var a = document.getElementById("SearchLink"); a.onclick = function() { se
window.onload = function() {
document.getElementById("SearchText").value = getParameterByName("s");
var a = document.getElementById("SearchLink");
a.onclick = function() {
search();
}
}
function search() {
var searchResultsUrl = "/search/";
document.location.href = searchResultsUrl + "?s=" +
document.getElementById("SearchText").value;
return false;
}
function getParameterByName(name) {
var match = RegExp('[?&]' + name + '=([^&]*)')
.exec(window.location.search);
return match && decodeURIComponent(match[1].replace(/\+/g, ' '));
}
<input type="text" id="SearchText" onkeypress="if(SearchText.keyCode==13)search()" />
下面是html代码:
window.onload = function() {
document.getElementById("SearchText").value = getParameterByName("s");
var a = document.getElementById("SearchLink");
a.onclick = function() {
search();
}
}
function search() {
var searchResultsUrl = "/search/";
document.location.href = searchResultsUrl + "?s=" +
document.getElementById("SearchText").value;
return false;
}
function getParameterByName(name) {
var match = RegExp('[?&]' + name + '=([^&]*)')
.exec(window.location.search);
return match && decodeURIComponent(match[1].replace(/\+/g, ' '));
}
<input type="text" id="SearchText" onkeypress="if(SearchText.keyCode==13)search()" />
文本框没有
keyCode
属性-这是事件对象的属性。试试这个
HTML:
<input type="text" id="SearchText" />
文本框没有
keyCode
属性-这是事件对象的属性。试试这个
HTML:
<input type="text" id="SearchText" />
onkeypress脚本中的
SearchText
变量将未定义。我建议用Javascript定义事件处理程序,如下所示:
SearchTextbox = document.getElementById("SearchText");
SearchTextbox.onkeypress = function(evt) {
if (evt.keyCode === 13) {
// Handle key press event here
}
}
供参考:
键盘事件:
element.onkeypress:
编辑:根据建议更改了
事件
参数名称。onkeypress脚本中的搜索文本
变量将未定义。我建议用Javascript定义事件处理程序,如下所示:
SearchTextbox = document.getElementById("SearchText");
SearchTextbox.onkeypress = function(evt) {
if (evt.keyCode === 13) {
// Handle key press event here
}
}
供参考:
键盘事件:
element.onkeypress:
编辑:根据建议更改了
event
param名称。jsfiddle of issue:jsfiddle of issue:您通常希望将事件参数命名为event
以外的名称,因为这会隐藏IE使用的窗口。event
全局变量。您通常希望将事件参数命名为event以外的名称event
作为IE使用的窗口的阴影。event
全局变量。