jQuery MiniUI

标题: 弹出窗页面 提交保存按钮 关闭当前页面问题 [打印本页]

作者: hnczlmd    时间: 2013-6-14 15:15:14     标题: 弹出窗页面 提交保存按钮 关闭当前页面问题

[attach]2169[/attach]弹出窗页面:
<asp:Button ID="btn_save" runat="server"  Text="确定" />
              <asp:Button ID="btn_cancel" runat="server" Text="关闭" />

function onCancel()
{
     if (window.CloseOwnerWindow) return window.CloseOwnerWindow("cancel");
     else window.close();  
     return false;         
}
后台:
   Response.Write("<script>window.CloseOwnerWindow()</script>");
这样子写没有用  关闭不了。

作者: factory    时间: 2013-6-14 17:12:21

onCancel()方法被执行到了没
作者: hnczlmd    时间: 2013-6-14 17:41:40

factory 发表于 2013-6-14 17:12
onCancel()方法被执行到了没

用这种方式在后台调用JS方法,JS方法没执行。如果在窗体加载事件中写 btn_save.Attributes.Add("onclick", "closePage();"); 那就可以。但是这种写法不能满足我的需求。只能在保存事件中 并且数据执行成功后 执行关闭。不知道咋整
作者: hnczlmd    时间: 2013-6-14 17:56:59

hnczlmd 发表于 2013-6-14 17:41
用这种方式在后台调用JS方法,JS方法没执行。如果在窗体加载事件中写 btn_save.Attributes.Add("onclick" ...

如果在前台页面定义:
<asp:TextBox ID="TextBox1" runat="server">Hello ASP.NET</asp:TextBox>

后台保存事件中调用:
string myScript = @"alert(document.forms[0]['TextBox1'].value);";
                Page.ClientScript.RegisterStartupScript(this.GetType(), "MyScript", myScript, true);

这样可以取到值,但是这个只是取页面控件值,并没有执行JS函数。
作者: niko    时间: 2013-6-15 09:42:54

Response.Write("<script>setTimeout(function(){onCancel()}, 1);</script>");
作者: hnczlmd    时间: 2013-6-16 16:04:58

niko 发表于 2013-6-15 09:42
Response.Write("setTimeout(function(){onCancel()}, 1);");

试了很多的方法 都不行。后台服务器事件中调用失效。根本就没进函数。在前台页面
window.onload=function(){
  alert("dd");
window.CloseOwnerWindow();
   } ;
这样子测试也不能关闭
作者: factory    时间: 2013-6-17 09:40:47

hnczlmd 发表于 2013-6-16 16:04
试了很多的方法 都不行。后台服务器事件中调用失效。根本就没进函数。在前台页面
window.onload=function ...

你把你的问题页面上传下
或者你做个简单的重现问题的demo发上来,我们看下




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2