更新面板中的jQuery在面板刷新后未成功添加cssclass

时间:2013-05-29 14:49:33

标签: jquery asp.net updatepanel wizard-control

我有一个div,点击后会通过以下jQuery显示隐藏的asp:textbox。

      function BindEvents() {
          $(document).ready(function () {
             $("#showtextbox").click(function () {  
                 $("#TextBox1").removeClass("hidden"); 
                 $("#TextBox1").addClass("showInline");  
      });

这样可以正常工作,除非刷新更新面板。刷新后,单击“showtextbox”时文本框保持隐藏状态。我知道jQuery正在运行,因为它在调试时遇到了。这是我的代码。

  <ContentTemplate>
        <script type="text/javascript">
              Sys.Application.add_load(BindEvents);
        </script>
   </ContentTemplate>

   <asp:textbox runat="server" id="TextBox1"  CssClass="hidden" /> <span id=”showtb8”/>

有什么想法在这里发生了什么?刷新更新面板后,如何使文本框可见?我认为在将它添加到Sys.Application.add_load之后它会起作用,但事实并非如此。如果这会产生影响,这也是一个向导控制。

*我应该注意,在显示和隐藏常规div时,同样的逻辑工作正常。它只是不能使用asp:textbox。

1 个答案:

答案 0 :(得分:0)

在ajax调用之后,如果使用常规绑定,事件绑定将丢失。 尝试jquery的on函数。

         $("#showtextbox").on('click',function () {  
             $("#TextBox1").removeClass("hidden"); 
             $("#TextBox1").addClass("showInline");  
          });