Javascript 如何阻止模式对话框在单击按钮时关闭?

Javascript 如何阻止模式对话框在单击按钮时关闭?,javascript,jquery,asp.net,twitter-bootstrap,modal-dialog,Javascript,Jquery,Asp.net,Twitter Bootstrap,Modal Dialog,我在引导模式对话框中有此按钮: <button id="btnSelectAll" style="float:left">Select All</button> 以下是模态本身的标记(删除了细节,因为它有点长,基本上只是一堆复选框,最后有几个按钮): 正如我在调试器中看到的那样,单击事件代码被命中,但是当我单击按钮时,模式对话框总是立即关闭。我似乎在网上找不到任何东西来解释为什么,谷歌搜索只是给了我一大堆“如何在点击按钮时关闭模式”类型的问题。我想知道怎样才能不关上

我在引导模式对话框中有此按钮:

<button id="btnSelectAll" style="float:left">Select All</button>
以下是模态本身的标记(删除了细节,因为它有点长,基本上只是一堆复选框,最后有几个按钮):



正如我在调试器中看到的那样,单击事件代码被命中,但是当我单击按钮时,模式对话框总是立即关闭。我似乎在网上找不到任何东西来解释为什么,谷歌搜索只是给了我一大堆“如何在点击按钮时关闭模式”类型的问题。我想知道怎样才能不关上它

你可以试试
e.preventDefault
。从最开始,我们有这个

描述:如果调用此方法,则事件的默认操作 不会被触发

因此,如果您将代码更改为以下内容:

$(document).on('click', '#btnSelectAll', function (event)
{
    event.preventDefault();
    var $modal = $('#MyPanel');
    $modal.find('#aCheckBox').prop('checked', true);
});

您的问题将得到解决。

您还可以为您的模型提供标记吗?任何与此相关的JS也会很有用。您是否尝试使用e.preventDefault()?在模态体中使用按钮和复选框创建快速模态,单击按钮并选中所有复选框。门关不上。所以这应该勾选一堆复选框?请告诉我,您没有给一堆页面元素提供相同的ID,因为
$modal.find('#aCheckBox').prop('checked',true)不应该是你找到几个项目对它们做些什么的方式…@MattD谢谢,我不得不使用preventDefault不知道为什么,因为我的代码的其他所有内容都与你的匹配(现在…我不想一次勾选所有复选框,并且有一个很长的列表lol),所以感谢你让我的代码更简洁:D@eddie_cat欢迎你,伙计。我很高兴我帮了忙。
   <asp:Panel class="modal" ID="MyPanel" runat="server">
        <div class="modal-dialog modal-lg" style="width:30%">
            <div class="modal-content">
                <div class="modal-header">
                    <asp:Label ID="Header" runat="server" Text="Header" />
                </div>
                <div class="modal-body">
                    <table>
                        <tr>
                            <td style="width: 20px;" />
                            <td>
                                <asp:Label ID="Label" runat="server" Text="Stuff:" />
                            </td>
                           <tr>
                    </table>
               </div>
          </div>
     </div>
</asp:Panel>
$(document).on('click', '#btnSelectAll', function (event)
{
    event.preventDefault();
    var $modal = $('#MyPanel');
    $modal.find('#aCheckBox').prop('checked', true);
});