ALA*_*LAN 33 asp.net jquery event-handling
我有以下asp.net文本框控件.
<asp:TextBox ID="txtAdd" runat="server" />
Run Code Online (Sandbox Code Playgroud)
用户在此文本框中写入内容并按下ENTER键后,我想从代码隐藏中运行一些代码.
我该怎么办?
使用jQuery我捕获了ENTER键并触发了一些隐藏的按钮事件
$(document).ready(function(){
$(window).keydown(function(e){
if(e.keyCode == 13) $('#<% addbtn.ClientID %>'.click();
});
});
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法?
Jim*_*son 111
将文本框包装在asp:Panel标签内
隐藏有一个click事件,你想要做的事情一个按钮,然后提供<asp:panel>一个DefaultButton带有隐藏按钮的ID属性.
<asp:Panel runat="server" DefaultButton="Button1">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" style="display:none" OnClick="Button1_Click" />
</asp:Panel>
Run Code Online (Sandbox Code Playgroud)
aha*_*fox 31
ASPX:
<asp:TextBox ID="TextBox1" clientidmode="Static" runat="server" onkeypress="return EnterEvent(event)"></asp:TextBox>
<asp:Button ID="Button1" runat="server" style="display:none" Text="Button" />
Run Code Online (Sandbox Code Playgroud)
JS:
function EnterEvent(e) {
if (e.keyCode == 13) {
__doPostBack('<%=Button1.UniqueID%>', "");
}
}
Run Code Online (Sandbox Code Playgroud)
CS:
protected void Button1_Click1(object sender, EventArgs e)
{
}
Run Code Online (Sandbox Code Playgroud)
wbl*_*nks 11
您可以将文本框和按钮包装在ASP:Panel中,并将Panel的DefaultButton属性设置为Submit按钮的Id.
<asp:Panel ID="Panel1" runat="server" DefaultButton="SubmitButton">
<asp:TextBox ID="TextBox1" runat="server" />
<asp:Button ID="SubmitButton" runat="server" Text="Submit" OnClick="SubmitButton_Click" />
</asp:Panel>
Run Code Online (Sandbox Code Playgroud)
现在,无论何时焦点都在Panel中,按下enter键时将触发'SubmitButton_Click'事件.
ahaliav fox的回答是正确的,但是编码问题很小.
更改
<%=Button1.UniqueId%>
Run Code Online (Sandbox Code Playgroud)
至
<%=Button1.UniqueID%>
Run Code Online (Sandbox Code Playgroud)
它区分大小写.Control.UniqueID属性
错误14'System.Web.UI.WebControls.Button'不包含'UniqueId'的定义,并且没有扩展方法'UniqueId'接受类型'System.Web.UI.WebControls.Button'的第一个参数可以找到(你错过了using指令或程序集引用吗?)
Nb我在搜索答案之前TextChanged自己尝试了这个事件AutoPostBack,虽然它几乎是正确的,但它没有给出我想要的结果,也没有提出问题.它会在失去焦点时触发,Textbox而不是在按下返回键时.
| 归档时间: |
|
| 查看次数: |
131810 次 |
| 最近记录: |