我之前的代码运行得非常好,但现在,它在Chrome和IE10中不再起作用了。我不知道为什么
的Javascript
function EnterEvent(e, ctrl) {
var keycode = (e.keyCode ? e.keyCode : e.which);
if (keycode == 13) {
$('[id$=btnSave]').click();
}
else {
return false;
}
}
HTML
<asp:TextBox ID="txtAdd" runat="server" onkeyup="EnterEvent(event, this)" />
<asp:LinkButton ID="btnSave" runat="server" OnClick="btnSave_Click"></asp:LinkButton>
服务器端
protected void btnSave_Click(object sender, EventArgs e)
{
//Operations
}
我已将此$('[id$=btnAddItem]').click();
替换为$('#btnAddItem').click();
,但一无所获。服务器端永远不会被触发。
我在ajaxpanel中控制了我的控件,但之前它的工作方式是这样的。我使用F12开发人员工具进行了测试我到达点击部分但没有任何
有什么想法吗?谢谢!
答案 0 :(得分:0)
好吧,我找到了解决方案。我唯一需要做的就是从我的代码中替换这一行
$('[id$=btnSave]').click();
为此:
__doPostBack(linkCtrl, '');
函数的签名就像这样结束。
function EnterEvent(e, ctrl, linkCtrl) {
最后我在OnLoad和postback == false
中分配了这个事件txtAdd.Attributes.Add("onkeyup", "EnterEvent(event, this, '" + this.btnSave.UniqueID + "')"