【发布时间】:2010-08-19 20:50:40
【问题描述】:
我在设置了 CommandName="Update" 的 FormView 上有一个“保存”按钮。此按钮更新绑定到 FormView 的 EntityDataSource。
EDS 更新后,我想关闭这个(子,弹出)窗口并刷新我的父窗口(这样它就会反映刚刚对数据所做的更改)。
作为参考,我在这个页面上有一个类似的“取消”按钮,它只是调用一个 Javascript 函数“OnClientClick”:
function done() {
if (window.opener.closed) {
self.close();
} else {
window.opener.focus();
window.opener.location.href = opener.location;
self.close();
}
}
现在,我怎样才能让 FormView 和 EDS 做它的事情(处理更新命令),然后调用这个 javascript 函数(或代码来完成等效)???
在进行了更多挖掘之后,我解决了它。问题与 FormView 位于更新面板内有关。我必须使用以下内容:
ScriptManager.RegisterClientScriptBlock(this.UpdatePanel1, typeof(string), "done", "done();", true);
【问题讨论】:
-
是模态对话框吗?我会担心跨浏览器兼容。
-
不,只是一个 aspx 页面。它只需要与 IE 一起工作,这是在我移植到 .Net 的 JSP Web 服务器上运行的代码。该脚本多年来一直为我们的用户工作,没有任何问题。我只需要弄清楚如何从后面的代码中调用它(或完成同样的事情)。 :)
标签: javascript asp.net entity-framework gridview formview