0
我正在尝试做一些具体的事情。我的想法是当用户更改下拉列表的值时,尝试使用JQuery弹出一个模式对话框。用户应该选择'继续'或'取消'。我想要那个选择的结果来确定我是否运行ASP.NET回发事件。现在,模式对话框弹出,但随后ASP.NET页面执行AutoPostBack
并立即消失,并清除模式框。同时使用JQuery和ASP.NET OnSelectedIndexChanged事件处理程序的时机
什么是一个好/优雅的方式来解决我的dillema?有没有办法让ASP.NET等待结果,或者我需要某种隐藏的按钮来处理稍后启动回发?
感谢您的帮助!
<asp:Content ID="MainContent" ContentPlaceHolderID="Content" runat="Server">
<asp:ScriptManagerProxy ID="smpProxy" runat="server">
<Scripts>
<asp:ScriptReference Path="~/JQuery/jquery-1.7.1.min.js" />
<asp:ScriptReference Path="~/JQuery/jquery-ui-1.8.18.custom.min.js" />
</Scripts>
</asp:ScriptManagerProxy>
<asp:UpdatePanel ID="updPanel" runat="server">
<ContentTemplate>
<script type="text/javascript">
function CheckConfirmation() {
$('#divConfirmChange').dialog("open");
return false;
}
function pageLoad() {
$("#divConfirmChange").dialog({
autoOpen: false,
resizable: false,
height: 158,
modal: true
});
}
</script>
然后这里是我的下拉列表进一步回落设定为自动回可能会非常棘手,处理尤其是当它是一个更新面板内
<asp:DropDownList ID="ddlApprovalStatus" onChange="javascript:CheckConfirmation();" runat="server" AutoPostBack="true" onSelectedIndexChanged="ddlProgram_SelectedIndexChanged">
我从来没有这样做过。它看起来很有希望,但我一直收到一个Sys.WebForms.PageRequestManager为空的错误。 (事实上,我的Sys对象在我调试时不包含名为WebForms的属性)我正在进一步研究尝试解决问题,任何提示都会感激。感谢您的答复! – aokelly 2012-03-20 21:44:52
请尝试将其放在页面底部以解决您的错误。 – Justin 2012-03-21 06:08:12