单击复选框并单击恢复按钮时如何打开Jquery对话框弹出窗口

Posted

技术标签:

【中文标题】单击复选框并单击恢复按钮时如何打开Jquery对话框弹出窗口【英文标题】:How to open a Jquery Dialog popup when checkbox is clicked and restore button is clicked 【发布时间】:2016-12-06 03:54:44 【问题描述】:

我的代码有点像这样:

  function ShowPopUpRestore() 
        var returnval = 1;
        var hddnField = document.getElementById(<%=hdnSelectedRows.ClientID%>");
        if (hddnField.value != 0) 
            returnVal = 0;
           $('<div></div>').appendTo('body')
                                .html('<div><align="left"> </br>' + '<%= this.GetMessage("Msg1595")%>' + '</h6></div>')
                                .dialog(
                                    resizable: false,
                                    modal: true,
                                    title: "",
                                    height: 150,
                                    width: 475,
                                    buttons: 
                                        Yes: function () 
                                           // //__doPostBack(mDdlSurgeryListRE.name, '');

                                            $(this).dialog("close");
                                        ,
                                        "No": function ()                                          

                                            $(this).dialog('close');
                                        
                                    ,
                                    close: function (event, ui) 
                                        $(this).remove();
                                    
                                ).prev(".ui-dialog-titlebar").css("background", "#4E2D1D");
                                                        
                    return false;
    

假设我的一个数据处于暂停模式,我希望它处于活动模式,所以我试图通过单击恢复按钮来恢复它。 当我单击复选框并尝试单击恢复按钮时,应该会弹出一个带有“是”/“否”按钮的弹出窗口:

如果我单击“是”,则检查的数据将恢复到活动模式。 如果我点击“否”,那么它应该保持暂停模式。

它可以对多个复选框(数据)有效。谢谢。

【问题讨论】:

【参考方案1】:

真的很简单,只需在 jQuery 中创建以下事件并绑定它们以调用 ShowPopUpRestore():

    为恢复按钮创建一个click() 事件。 为复选框创建一个change() 事件。

完整示例:

<head runat="server">
    <title></title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.3/jquery.min.js"></script>
    <script src="http://code.jquery.com/ui/1.11.1/jquery-ui.min.js"></script>
    <link href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.css" rel="stylesheet">
    <script type="text/javascript">
        $(function () 

            $("#btnRestore").click(function () 
                ShowPopUpRestore();
            );

            $("#chkBtn").change(function () 
                ShowPopUpRestore();
            );

            function ShowPopUpRestore() 
                var returnval = 1;
                var hddnField = document.getElementById("<%=hdnSelectedRows.ClientID%>");
                if (hddnField.value != 0) 
                    returnVal = 0;
                    $('<div></div>').appendTo('body').html('<div><align="left"></br>' + '<%= this.GetMessage("Msg1595")%>' + '</h6></div>')
                                    .dialog(
                                        resizable: false,
                                        modal: true,
                                        title: "",
                                        height: 150,
                                        width: 475,
                                        buttons: 
                                            Yes: function () 
                                                $(this).dialog("close");
                                                alert('You clicked YES');
                                            ,
                                            "No": function () 
                                                $(this).dialog('close');
                                                alert('You clicked NO');
                                            
                                        ,
                                        close: function (event, ui) 
                                            $(this).remove();
                                        
                                    ).prev(".ui-dialog-titlebar").css("background", "#4E2D1D");
                
                return false;
            
        );
    </script>
</head>
<body>
    <form id="form1" runat="server">
        <input type="button" id="btnRestore" value="Restore" />
        <input type="checkbox" id="chkBtn" value="Check box" />
        <asp:HiddenField ID="hdnSelectedRows" runat="server" Value="1" />
    </form>
</body>

【讨论】:

当我点击恢复按钮时,弹出来了又去。它没有等待或允许用户点击“是”/“否”按钮。 然后你的网页中有一些额外的逻辑会立即关闭弹出窗口。复制并粘贴我发布的代码,没有额外的逻辑,你会看到它有效。然后一旦它慢慢工作开始将其余代码添加回网页 嗨丹尼斯,我试过这样做,但它不起作用。有没有其他解决方案可以解决这个问题。 我得到了答案,因为我首先在我的代码中缺少返回值。谢谢

以上是关于单击复选框并单击恢复按钮时如何打开Jquery对话框弹出窗口的主要内容,如果未能解决你的问题,请参考以下文章

单击模态对话框按钮后如何取消选中该复选框?

如何在单击按钮时暂停读取文本文件并在 mfc vc++ 中的单击按钮时恢复它?

使用jquery单击时,单击单选按钮取消选中

如何阻止我的模态对话框在按钮单击时关闭?

单击对话框内的asp按钮时,如何防止关闭jQuery模式对话框?

word打开是乱码怎么办 word打开是乱码的解决方法