2011-04-21 32 views
7

我需要在用户离开文本框时在服务器上运行一些代码,它会对输入的内容进行一些计算。我宁愿避免使用jQuery,因为它会涉及到创建JSON服务器等。ASP.NET文本框中是否存在OnExit或Leave事件?

是不是有办法为这样的事件做回发?

+0

我不会放弃的jQuery。您可以使用jQuery来完成客户端代码的所有方面,而无需在服务器上解析JSON。 – IHateATMFees 2011-04-22 04:18:56

+0

问题是,处理必须从数据库访问一些数据。 – 2011-04-22 13:44:33

+0

如果您使用的是ASP.NET,那么您已经有了一个可以返回JSON的服务器应用程序。 – 2016-02-19 17:42:51

回答

9

TextBox具有AutoPostBack属性,以便在用户离开客户端文本框时导致回发。您可以使用TextChanged事件来调用某些服务器端代码。

+0

但我不想在文本上做出的每一项更改都打电话给服务器。只有当用户完成打字并离开现场时,数据已准备好处理...... – 2011-04-22 13:45:42

+0

@Adrian - AutoPostBack仅在用户离开文本框时触发。只有*然后*服务器可以对TextChanged事件做出反应。所以它按需要工作。 – 2011-04-22 14:31:10

+0

你说得对。该事件的名称是误导性的。有效。 – 2011-04-22 15:15:41

1

怎么样的文本框的Textchanged Event?当我们输入/改变一些文本然后离开文本框时它会被触发。

+0

我会注意到(如上面Hans Kesting所述),如果'AutoPostback'设置为“True”,则只有在离开TextBox后立即触发'TextChanged'事件。 – Hawkeye 2017-03-03 19:49:35

0

该解决方案适用于我:

<asp:TextBox ID="txtPara" runat="server" AutoPostBack="True" 
OnTextChanged="txtPara_TextChanged" onblur ="myFunction()"></asp:TextBox> 

    <script> 
     function myFunction() { 

      __doPostBack("<%=txtPara%>", **txtPara_TextChanged**); 

     }</script> 
相关问题