按钮单击事件在弹出窗口中不起作用

时间:2015-02-21 18:27:52

标签: javascript c# jquery asp.net

按钮点击事件在弹出窗口中不会触发,但是弹出窗口外它工作正常,在Html中,注释部分是我从弹出窗口调出按钮事件的地方,它工作正常但是在弹出窗口中,当我点击" Save"按钮。这是我的代码

  <script>

    $(function () {

         $("#dialog-1").dialog({
             autoOpen: false,
         });

         $("#opener").click(function () {
             $("#dialog-1").dialog("open");

         });
     });
  </script>

HTML

         <%--<asp:Button Text="save" class="btn btn-danger" runat="server"  CausesValidation="false" OnClick="SaveDB" />
           <asp:TextBox ID="TextBox1" runat="server" ></asp:TextBox>--%>

<button type="button" class="btn btn-warning" id="opener" > Create Database       </button>         
               <div id="dialog-1" title="Add new Database">
    Database name: <asp:TextBox ID="TextBox1" runat="server" ></asp:TextBox>
    <asp:Button Text="Save" class="btn btn-danger" runat="server"  CausesValidation="false" OnClick="SaveDB" style="padding-left:2%;padding-right:2%;" /> 
  </div>

aspx.cs文件代码

   protected void SaveDB(object sender, EventArgs e)
  { 
       TextBox1.Text="It works";
  }

1 个答案:

答案 0 :(得分:0)

尝试将事件处理程序附加到body,而不是像这样:

$("body").on("click", "#opener", function(){
    $("#dialog-1").dialog("open");
});

问题可能是在设置处理程序时,#opener元素不存在于DOM中,但附加到body将解决该问题。