第三个 asp.net 按钮不会打开 jQuery 对话框
本文关键字:对话框 jQuery 按钮 net asp 三个 | 更新日期: 2023-09-27 18:36:07
我有一个非常基本的测试 asp.net Web应用程序。有一个<asp:Button>
会弹出一个jQuery对话框。在此对话框中,还有另一个<asp:Button>
使<div>
标签可见,在此<div>
标签中还有第三个<asp:Button>
。到目前为止一切都很好。现在根据我的代码,第三个按钮应该弹出第二个jQuery对话框,但这永远不会发生。我哪里弄错了?
这是我的aspx代码:
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true"></asp:ScriptManager>
<asp:Button ID="btn" runat="server" Text="btn" />
<div id="div1">
<asp:UpdatePanel ID="UpdatePanel2" runat="server">
<ContentTemplate>
<table>
<tr>
<td>
<asp:Button ID="btn1" runat="server" Text="btn1" OnClick="btn1_Click" />
</td>
<td>
<div id="div2" runat="server" visible="false">
<asp:Button ID="btn2" runat="server" Text="btn2" />
</div>
</td>
</tr>
</table>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div id="div3" style="display:none">
<h1>test</h1>
</div>
这是jQuery的代码:
<script type="text/javascript">
var dialogOpts = {
resizable: false,
bgiframe: true,
autoOpen: false,
width: "710px"
};
$('#div3').dialog(dialogOpts).parent().appendTo($("#form1"));;
$(function () {
$("#div3").dialog({
maxWidth: 1050,
maxHeight: 534,
width: 1050,
height: 534,
resizable: false,
autoOpen: false,
buttons: {
Cancel: function () {
$(this).dialog("close");
}
}
});
$("#btn2").click(function () {
$("#div3").dialog("open");
return false
});
});
</script>
<script type="text/javascript">
var dialogOpts = {
resizable: false,
bgiframe: true,
autoOpen: false,
width: "710px"
};
$('#div1').dialog(dialogOpts).parent().appendTo($("#form1"));;
$(function () {
$("#div1").dialog({
maxWidth: 1050,
maxHeight: 534,
width: 1050,
height: 534,
resizable: false,
autoOpen: false,
buttons: {
Cancel: function () {
$(this).dialog("close");
}
}
});
$("#btn").click(function () {
$("#div1").dialog("open");
return false
});
});
</script>
它被放置在正文中,到目前为止,只有第一个jQuery弹出。这是我的 c# 函数,它使第二个 <div>
标记可见:
protected void btn1_Click(object sender, EventArgs e)
{
div2.Visible = true;
}
visible = false
基本上阻止元素呈现。如果为未呈现的内容注册 onclick 事件(未呈现,不是显示:无,也不是可见性:隐藏,您的按钮实际不驻留在页面中),则 onclick 事件根本不会注册到任何内容。在更新面板中显示按钮后,单击时不会运行任何内容,因为尚未设置单击处理(该按钮
在$("#btn2").click(function () {
$("#div3").dialog("open");
return false
});
)