我正在尝试实现一个搜索功能,该功能捕获Enter键并重定向到ASP.NET 3.5应用程序中的不同页面。不幸的是,它不能在Firefox (3.5版)中工作,但在IE中工作得很好。请参考以下代码:
脚本:
function searchKeyPress(e) {
if (window.event) { e = window.event; }
if (e.keyCode == 13) {
document.getElementById('btnSearch').click();
}
}
function redirect() {
document.location = "http://localhost:5555/search.aspx?q=keyword";
}标记:
<form name="form1" method="post" runat="server" id="form1"/>
<input type="text" id="txtSearch" onkeypress="searchKeyPress(event);"/>
<input type="button" id="btnSearch" Value="Search" onclick="redirect();"/>
</form/>还有没有人遇到过这个问题?
任何帮助都将不胜感激!
发布于 2009-11-27 11:32:32
为什么不使用Submit按钮和表单操作将您带到搜索页面?默认情况下,submit按钮显示了您正在寻找的行为,因此不需要javascript。
<form name="form1" method="get" action="/search.aspx" id="form1"/>
<input type="text" id="q" />
<input type="submit" id="btnSearch" Value="Search" />
</form/>如果您真的想坚持使用您的javascript解决方案(我不推荐使用它,因为它不太容易访问,并且依赖于javascript),那么可以尝试一下。
function searchKeyPress(e) {
e = e || window.event || event;
var code = e.charCode || e.keyCode || e.which;
if (code == 13) {
redirect();
}
}发布于 2009-11-27 11:30:43
<script type="text/javascript">
function searchKeyPress(e) {
if (window.event) { e = window.event; }
if (e.keyCode == 13) {
document.getElementById('form1').submit();
}
}
function redirect() {
document.location = "http://localhost:5555/search.aspx?q=keyword";
}
</script>使用forms.submit()而不是.click(),.click()只在ie上支持,在火狐中也支持提交。
https://stackoverflow.com/questions/1806599
复制相似问题