单击复选框并单击恢复按钮时如何打开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++ 中的单击按钮时恢复它?