我想知道如何在选择或聚焦文本框时触发事件。我的文本框是 asp.net 类型。
<asp:TextBox ID="TB" runat="server"></asp:TextBox>
当事件被触发时,我想用 c# 在代码隐藏中做一些事情。
提前感谢您的回复。
我们在 asp.net 中没有任何文本框选择事件。您可以尝试使用文本框的文本更改事件,也可以尝试使用下面的 java 脚本。
<head runat="server">
<title></title>
<script type="text/javascript">
function RefreshUpdatePanel() {
__doPostBack('<%= Code.ClientID %>', '');
};
</script>
<asp:TextBox ID="Code" runat="server" onkeyup="RefreshUpdatePanel();" AutoPostBack="true" OnTextChanged="Code_TextChanged"></asp:TextBox>
<asp:UpdatePanel ID="Update" runat="server">
<ContentTemplate>
<asp:DropDownList runat="server" ID="DateList" />
<asp:TextBox runat="server" ID="CurrentTime" ></asp:TextBox>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Code" />
</Triggers>
</asp:UpdatePanel>
oki,所以我通过阅读不同页面上的文章来弄清楚。
检查链接:http ://codingresource.blogspot.no/2010/01/how-to-use-events-like-onblur-onfocus.html
而不是使用 onblur 我使用 onclick
它们不是asp文本框的服务器端onfocus事件,您可以按如下方式使用textchanged事件。使用ajax控件的更新面板可以避免页面刷新。
<asp:TextBox ID="TextBox1" runat="server" AutoPostBack="True" ontextchanged="TextBox1_TextChanged1" ></asp:TextBox>
protected void TextBox1_TextChanged2(object sender, EventArgs e)
{
}
在客户端 onfocus 事件您可以通过 ajax 调用调用 ac# webmethord,如下所示
HTML 源
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#TextBox1").focus(function () {
$.ajax({
type: "POST",
url: "Default.aspx/test",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
}
});
});
});
</script>
C# 代码
[WebMethod]
public static void test()
{
}