带有OnClick按钮的引导程序模式不起作用

问题描述 投票:0回答:1

美好的一天!

我在Asp.Net中有一个GridView,其中,如果用户单击<a>标记,它将启动一个模态,其中包含所选网格行的值。该代码使用javascript命令检索数据,然后将其分发到指定的模式。

事实是,filename被传递到隐藏的模式文本框。现在,模态内部是一个OnClick命令按钮,如果单击该按钮,则应触发该命令。

我已经尝试过了,但是它运行良好,但是当我添加另一个模态(主要是为了添加目的)时,按钮上的命令不再起作用。如果我尝试删除另一个模态,则该命令现在可以工作了。我对为什么会这样感到困惑?

GridView按钮

<a data-id="<%#Eval("Id") %>"  title="Delete User" class="open-DeleteDialog btn btn-danger" data-toggle="modal" data-target="#DeleteUser">Delete</a>

脚本

<script type="text/javascript">
    $(function () {
        $(".open-DeleteDialog").click(function () {
            document.getElementById("<%=IdVal.ClientID%>").value = $(this).data('id');
            $("#DeleteUser").modal("show");

        });
    });
</script>

第一模态

   <div class="modal fade" id="DeleteUser" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle1" aria-hidden="true">
   <div class="modal-dialog modal-dialog-centered" role="document">
   <div class="modal-content">

       <!-- Modal Head -->
      <div class="modal-header">
        <h5 class="modal-title" id="exampleModalLongTitle1">Modal title</h5>
      </div>

      <!-- Modal Body -->
      <div class="modal-body">
      <div class="form-horizontal">
         <h2>Are you sure you want to delete this user?</h2>
         <div class="form-group">
            <div class="col-md-10">
                <asp:TextBox runat="server" ID="IdVal" CssClass="form-control" />
            </div>
        </div>
      </div>      
      </div><!--End tag of Modal Body -->

      <!-- Modal Footer -->
      <div class="modal-footer">
        <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
        <asp:Button runat="server" OnClick="Delete1User_Click" onServerClick="Delete1User_Click" Text="Delete User" CssClass="btn btn-Success" />
      </div>

  </div>
  </div>
  </div>

其他模态-与所需模态冲突的一种

    <!-- Add Modal -->
   <div class="modal fade" id="AddUser" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle" aria-hidden="true">
   <div class="modal-dialog modal-dialog-centered" role="document">
   <div class="modal-content">

       <!-- Modal Head -->
      <div class="modal-header">
        <h5 class="modal-title" id="exampleModalLongTitle">Modal title</h5>
      </div>

      <!-- Modal Body -->
      <div class="modal-body">
      Some code here
    </div>      
    </div><!--End tag of Modal Body -->

      <!-- Modal Footer -->
      <div class="modal-footer">
        <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
        <asp:Button runat="server" OnClick="CreateUser_Click" Text="Add User" CssClass="btn btn-Success" />
      </div>


  </div>
  </div>
  </div>

第一个模态后面的代码

protected void DeleteUser_Click(object sender, EventArgs e)
        {
            conn.Open();
            SqlCommand cmd = new SqlCommand("sp_deleteuser", conn);
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("UserId", bookId1.Text);
            cmd.ExecuteNonQuery();
            cmd.Dispose();
            conn.Close();

            Response.Redirect(Request.RawUrl);
        }

冲突模式后面的代码

protected void CreateUser_Click(object sender, EventArgs e)
{
 Some code here
}

为什么在模式中发生冲突,其中我的“删除”按钮命令不起作用但仍可单击?除此之外,即使我在按钮上添加了引导类,也无法使用。

提前感谢!

javascript c# jquery asp.net bootstrap-modal
1个回答
0
投票

好我可以借助here的答案解决问题。因为我有另一个带有ControlToValidate的模态,所以发生的是其他模态值得到了验证,并且由于里面没有任何值,因此什么也没有发生。我可以通过添加以下代码来绕过此操作:CausesValidation="False"

<asp:Button Id="btnDeleteUser" runat="server" Text="Delete User" OnClick="DeleteUser_Click"  CssClass="btn btn-Success" CausesValidation="False" />
© www.soinside.com 2019 - 2024. All rights reserved.