【发布时间】:2012-03-31 18:19:47
【问题描述】:
我正在单击按钮时打开一个 jquery 对话框。我正在将面板作为对话框打开。在那个面板中有 iframe,在那个 iframe src 中我调用了新页面。
我已经在页面加载中初始化了 jquery 对话框,如下所示 /* 在页面加载时初始化对话框*/
$(function(){
$("#PanelTest").dialog(
{
minWidth: 500,
minHeight: 500,
autoOpen: false
});
});
在这个函数中,我在这个函数中打开面板作为对话框
function OpenPopupTest()
{
$("#PanelTest").dialog('open')
}
我的面板如下
<asp:Panel ID="PanelTest" runat="server" Style="display: none; background-color: White;
font-size: 12px;">
<div id="DivTst" style="text-align: left; margin-top: 20px; margin-left: 10px">
<iframe id="iframeTest" src="Test1.aspx" height="400px" width="400px"></iframe>
<br />
</div>
</asp:Panel>
此按钮位于更新面板内。
在 botton 属性后面的代码中,我正在调用 javascript 函数。 ButtonTest.Attributes.Add("onclick","OpenPopupTest()");
当我单击 ButtonTest 按钮时,弹出窗口正在打开。在Test1.aspx 中有1 个文本框,我想填写Test1.aspx 的页面加载事件。我已经编写了用于在 Test1.aspx 的页面加载事件中将值放入文本框中的代码。当我调试代码时,我发现正在调用此代码,但是当弹出窗口打开时,文本框中没有显示任何值。 我认为,当面板所在的页面加载时,页面在 iframe 中调用,即。 Test1.aspx 也正在加载。我想将 1 个值从父页面传递到子页面(Test1.aspx),通过该值填充文本框中的值。
请告诉我如何实现这一目标。
任何帮助将不胜感激。
【问题讨论】:
-
必须是 iframe 吗?我认为使用 ajax 加载内容会更容易和更好的解决方案,并在 ajax 成功打开对话框。
-
能否请您告诉我如何使用 ajax 加载内容以及如何打开 ajax 成功对话框。