我使用showModalDialog函数打开弹出窗口,这是ASP.NET页面。在我从下拉列表中选择一些选项后,我填充window.ReturnValue并按下OK按钮。模态弹出窗口关闭,但我不知道如何将返回值传递给C#代码后面继续进行。
以下是代码:
打开弹出窗口:
function ClientItemClicked(sender, eventArgs)
{
if (eventArgs.get_item().get_value() == "excel")
{
var retVal = window.showModalDialog("ExportToExcelChoice.aspx", null, "dialogWidth: 400; dialogHeight: 200; center: yes; resizable: no;");
}
}
关闭弹出窗口:
function ReturnValue() {
var choice = document.getElementById("DropDownList1").value;
if ((window.opener != null) && (!window.opener.closed)) {
window.ReturnValue = choice;
var result = window.ReturnValue;
}
window.close();
}
我使用Firefox。
答案 0 :(得分:1)
创建服务器端隐藏输入并为其分配返回值。
使用jQuery:
$("#<%=serverhidden.ClientID%>").val(retVal)
或javascript:
document.getElementById("<%=serverhidden.ClientID%>").value = retVal
现在回发后,您可以从服务器端的隐藏输入中访问该值。