我正在尝试在输入类型=“文本”控件上使用onkeypress,以便在按下输入按钮时触发某些javascript。它适用于大多数页面,但我也有一些带有自定义.NET控件的页面。
问题是.NET提交在onkeypress之前触发。有没有人知道如何首先制作onkeypress fire?
如果有帮助,这是我的javascript:
function SearchSiteSubmit(myfield, e)
{
var keycode;
if (window.event)
keycode = window.event.keyCode;
else if (e)
keycode = e.which;
else
return true;
if (keycode == 13)
{
SearchSite();
return false;
}
else
return true;
}
答案 0 :(得分:0)
Javascript OnKeyPress
将始终首先触发,更多的情况是,在页面回发之前它已完成其操作..
我想重新考虑一下发生了什么以及在哪里......服务器端发生了什么?
答案 1 :(得分:0)
这不是一个非常明确的问题所以我会试一试 -
看起来你正在寻找一个“输入”的按键。问题似乎是“输入”键通常由浏览器自动绑定到表单上的提交按钮,这意味着当用户按Enter键时,您提交表单,而不是运行您在此处的javascript。你应该做的是创建一个全局事件处理程序,在按下enter按钮时检查“MyField”是否具有焦点,如果是,则触发javascript,而不是提交表单。我希望我理解你的问题!
答案 2 :(得分:0)
你是如何分配javascript的?
应该看起来像:
<input id="TextID" type="text" onkeypress="return SearchSiteSubmit('TextID', event)" />