【问题标题】:Get values from modal popup in parent window's button click event从父窗口的按钮单击事件中的模式弹出窗口获取值
【发布时间】:2012-12-12 07:34:33
【问题描述】:

我需要从 aspx.cs 页面显示一个模式弹出窗口。我需要从服务器端调用弹出窗口,因为在弹出窗口打开之前,我需要通过查询字符串将 ID 传递给弹出窗口。

这是我显示弹出窗口的代码。

 protected void btnNote_Click(object sender, EventArgs e)
    {
        string queryStringParam = "some text"; // some server code here to get the string ready;            
        ScriptManager.RegisterStartupScript(this, this.GetType(), "popup", "openNotePopup('"+ queryStringParam  +"');", true);           
    }

这是获取参数并启动模式弹出窗口的 javascript。

function openNotePopup(var param) 
{
    var noteResult = window.showModalDialog("AddEditNote.aspx?Note=" + param, "Add/Edit Notes", 'center:yes; dialogWidth:600px; dialogHeight:500px;');
    document.getElementById("hidden_NoteText").value = noteResult;
}

当弹出窗口关闭时,我将一个字符串值作为 window.returnValue 传递,该值在客户端的 noteResult 变量中捕获。

现在我需要在我的服务器端捕获弹出关闭事件。我可以在客户端捕获事件,但我需要在服务器端捕获事件,以便我可以从隐藏字段中获取值并进行处理。

我怎样才能做到这一点?

【问题讨论】:

    标签: javascript asp.net modal-dialog


    【解决方案1】:

    我发现了一个似乎可以解决这个问题的线程。希望这与您正在寻找的内容相似: Javascript confirm message problem

    【讨论】:

      【解决方案2】:

      我建议你像这样在 ShowDialog 上编写你自己的函数:

      showNotePopup('NotePopup', title, closeNotePopup);
      

      NotePopup - 弹出窗口的 ID; showNotePopup 应该描述您想在弹出窗口中看到的内容,它将如何关闭; closeNotePopup 函数,您绑定到弹出窗口关闭,在其中您可以进行例如后请求,这样您将在弹出窗口关闭时捕获服务器。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-10-16
        • 1970-01-01
        • 2021-03-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多