防止在 asp:文本框输入时模式关闭

  • 本文关键字:模式 asp 文本 c# asp.net
  • 更新时间 :
  • 英文 :


我试图阻止在我的模态 asp 文本框中输入按键输入时关闭我的模态。

我尝试将文本框包装在另一个更新面板中,并在 textchanged 上使用异步回发触发器,但这不是我想要的。我正在尝试创建一个文本输入部分,该部分仅在按下按键输入时更新,而不是在文本更改时更新,我还尝试像其他页面建议的那样将 data-dismiss="modal" 添加到文本框本身,但这只是意味着当我单击文本框时它会关闭模态。

<asp:UpdatePanel ID="upd_mdl_console" runat="server" UpdateMode="Conditional">
    <ContentTemplate>
        <!-- Ryan Console-->
        <div class="modal fade" data-dismiss="modal" data-toggle="modal" data-backdrop="static" data-keyboard="false" id="mdl_console" tabindex="-1" role="dialog">
            <div class="modal-dialog2" role="document">
                <div class="modal-content _dev_console">
                    <div class="modal-header _dev_console">
                        <h5 class="modal-title pull-left" id="H1" runat="server">
                            <asp:Label runat="server" ID="Label3" Text="DEV CONSOLE"></asp:Label></h5>
                        <button type="button" class="close pull-right" data-dismiss="modal" aria-label="Close">
                            <span aria-hidden="true">&times;</span>
                        </button>
                        <br />
                    </div>
                    <div class="modal-body">
                        <div class="panel-heading _dev_console">
                            <asp:Literal ID="devbox_line_5" runat="server" Text=""></asp:Literal>
                            <asp:Literal ID="devbox_line_4" runat="server" Text=""></asp:Literal>
                            <asp:Literal ID="devbox_line_3" runat="server" Text=""></asp:Literal>
                            <asp:Literal ID="devbox_line_2" runat="server" Text=""></asp:Literal>
                            <asp:Literal ID="devbox_line_1" runat="server" Text=""></asp:Literal>
                            <asp:UpdatePanel ID="upd_mdl_txt" runat="server" UpdateMode="Conditional">
                                <ContentTemplate>
                                    <asp:TextBox ID="txt_Devbox" class="form-control _dev_console" runat="server" autocomplete="off"></asp:TextBox>
                                </ContentTemplate>
                            </asp:UpdatePanel>
                        </div>
                        <div class="panel-heading _dev_console">
                            <div class="input-group" style="margin-bottom: 10px; width: 100%">
                            </div>
                        </div>
                    </div>
                    <div style="clear: both"></div>
                    <div class="modal-footer _dev_console">
                        <asp:Label ID="Label4" runat="server" Text="Label" Visible="false"></asp:Label>
                        <%--                            <asp:Button ID="Button1" OnClick="lnk_go_Click" class="btn btn-success" runat="server" AutoPostBack="false" Text="Create"></asp:Button>--%>
                        <button type="button" class="btn btn-secondary _dev_console" data-dismiss="modal">Close</button>
                    </div>
                </div>
            </div>
        </div>
    </ContentTemplate>
</asp:UpdatePanel>

我使用以下代码片段禁用文本框中的输入。这还可以防止在文本框内按 Enter 时触发表单帖子。它也可能用于防止模态的关闭。

$('input').keypress(function (e) {
    return e.keyCode !== 13;
});

如果你只想禁用模态中的输入,你可以做这样的事情

$('.modal-body input').keypress(function (e) {
    return e.keyCode !== 13;
});

最新更新