ASP.NET对话框框建议

3

我一直在研究在ASP.NET中使用对话框的方法。与我在Windows应用程序中使用的对话框相比,Web应用程序的使用方式有很大的不同。

我有一个带有自己提交按钮和代码的ASP.NET表单。在该提交按钮的事件处理程序中,除了其他代码之外,我希望出现一个模态对话框来询问用户其他信息,并返回执行其余提交按钮代码的过程。问题是如何实现这一点。

JQueryUI Dialog Modal Form是我看过的一个选项。我只是想知道在对话框消失后如何继续执行ASP.NET表单提交按钮的代码。此外,我必须考虑服务器端/客户端编码之间的差异。

非常感谢任何想法/建议。

注意:我正在使用VS2003和.Net 1.1进行编码。


1
请注意,这是ASP.NET而不是ASP。另外,也许是时候更新一下了?你正在谈论八年前的不受支持的软件,而且还用现在时态。 - John Saunders
2个回答

3
请参见下面链接中我的回答,我使用了一个隐藏的 asp:button 来进行 callback

ASP.NET with jQuery popup dialog: how to post back on dialog closing

标记:

<span onclick='showjQueryUIDialogOkBtnCallback("<%= btnHidden.ClientID%>","<%= yourModalDialog.ClientID%>", "OK", true, 600,600)'>show dialog</span>

<div id="yourModalDialog" runat="server">
     your modal dialog div
</div>

<asp:button id="btnHidden" style="display:none" runat="server" onclick="btnHidden_Click"/>

脚本:

 function showjQueryUIDialogOkBtnCallback(buttonToClick, dialogSelector, buttonTxt, isModal, width, height) 
 {
       var buttonOpts = {};
       buttonOpts[buttonTxt] = function () {
           $("#" + buttonToClick).trigger('click');
       };

       buttonOpts['Cancel'] = function () {
           $(this).dialog("close");
           $(this).dialog('destroy'); 
       }

       $(dialogSelector).dialog({
           resizable: false,
           height: height,
           width: width,
           modal: isModal,
           open: function (type, data) {
               $(this).parent().appendTo("form"); //won't postback unless within the form tag
           },
           buttons: buttonOpts

       });

       $(dialogSelector).dialog('open');

  }

谢谢。我还在考虑我的方法,但是你的答案真的很好。 - Thomas

1

+1 我也是这么想的。MSDN上还有一个客户端JavaScript参考文档。 - Tim
我真的很想用Ajax ToolKit,但我正在使用VS2003和.Net 1.1进行编码,无法兼容。我会在我的问题中更新这个重要信息。 - Thomas
-1 感谢您的帮助,但这在 .NET 1.1 中不起作用。 - John Saunders

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接