如何防止从dopostback关闭bootstrap模态?

时间:2017-11-28 07:40:40

标签: javascript jquery asp.net vb.net twitter-bootstrap

我的问题是当我选择任何单选按钮列表时,模态窗口将被关闭。我使用javascript更改事件然后回发asp rbl控制器。

实际上,我的整个代码都在更新面板内。请告诉我防止这个问题的技巧或方法。

提前谢谢你。

javascript& ASPX



$('#<%=rbl.ClientID %> input').change(function () {
  __doPostBack('<%: rbl.ClientID %>', '');
});
&#13;
<asp:UpdatePanel runat="server" ID="panel">
  <ContentTemplate>
    
    <div class="modal fade" id="Modal">
      <div class="modal-dialog">
        <div class='panel panel-info'>
          <div class='panel-body'>
            <asp:RadioButtonList ID="rbl" runat="server">
              <asp:ListItem Value="add">Add</asp:ListItem>
              <asp:ListItem Value="remove">Remove</asp:ListItem>
            </asp:RadioButtonList>
          </div>
        </div>
      </div>        
    </div>                              
    
  </ContentTemplate>
</asp:UpdatePanel>
&#13;
&#13;
&#13;

aspx.vb

Private Sub rbl_SelectedIndexChanged(sender As Object, e As EventArgs) Handles rbl.SelectedIndexChanged
    myFnc()
End Sub

3 个答案:

答案 0 :(得分:2)

你可以这样做:

<div class="modal fade" id="Modal">
    <div class="modal-dialog">
        <asp:UpdatePanel runat="server" ID="panel">
            <ContentTemplate>
                <div class='panel panel-info'>
                    <div class='panel-body'>
                        <asp:RadioButtonList ID="rbl" runat="server" OnSelectedIndexChanged="rbl_SelectedIndexChanged">
                            <asp:ListItem Value="add">Add</asp:ListItem>
                            <asp:ListItem Value="remove">Remove</asp:ListItem>
                        </asp:RadioButtonList>
                    </div>
                </div>
            </ContentTemplate>
        </asp:UpdatePanel>
    </div>
</div>

答案 1 :(得分:0)

您可以将RadioButtonList的OnSelectedIndexChanged服务器端事件与Autopost属性设置为True以实现相同的功能。你不需要通过带有

的__doPostBack来回发帖子
$('#<%=rbl.ClientID %> input').change(function () {
  __doPostBack('<%: rbl.ClientID %>', '');
});

答案 2 :(得分:0)

On&#34; OnSelectedIndexChanged&#34;像这样传递事件

                `<asp:RadioButtonList ID="rbl" runat="server" OnSelectedIndexChanged="rbl_SelectedIndexChanged(event)">
                        <asp:ListItem Value="add">Add</asp:ListItem>
                        <asp:ListItem Value="remove">Remove</asp:ListItem></asp:RadioButtonList>`   

之后进行必要的更改,如下所示。

`$('#<%=rbl.ClientID %> input').change(function (event) {

__ doPostBack(&#39;&lt;%:rbl.ClientID%&gt;&#39;,&#39;&#39;); event.preventDefault(); })` 你的模态弹出窗口不会被关闭。