opener.location.reload()引起的父窗口刷新问题(问题解决,立即结贴) opener.opener="";加这一句试试 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 opener.opener =“”不会刷新父窗口阿,我要刷新父窗口得到子窗口的一些值 是这样的,我先在父窗口中输入一些相关值,然后打开子窗口选择另外一些值,接着关闭子窗口同时将子窗口要传给父窗口的值保存在Session或者application中,同时栓新父窗口得到这些值,然后接着在父窗口中输入另外一些值并保存,如果将method设置为get,我就激发不了保存按钮的click事件了 不可能 是你get post 的原因 代码贴出来 看看! 返回给父窗体的值很复杂吗?用showModalDialog不能实现? 可以使用ShowModalDialog。但是由于子窗口里面包含一个动态生成的很大的树,我不想在子窗口刷新页面来得到选择的值,我要使用window.open方法。不过返回父窗口就遇到了上面提到的这个问题 代码如下:父窗口中打开子窗口的代码:this.btnSelectCtl.Attributes.Add("onclick","window.open('select.aspx?id=0','newwin','toolbar=no,menubar=no,status=no,location=no,resizable=no,scrollbars=no,width=300,height=400,top=100,left=240');return false;");子窗口传过来值的获取if ( Session["fidFrame"] != null){ string[] strFidFrame = Session["fidFrame"].ToString().Trim().Split(','); this.txtFrameInfoLCtl.Text = strFidFrame[1].ToString(); this.txtFrameInfoFid.Text = strFidFrame[0].ToString();}子窗口中的load函数private void Page_Load(object sender, System.EventArgs e) { // 在此处放置用户代码以初始化页面 if(!this.IsPostBack) { //参数fid,标明根节点的fid string strFid = Request.QueryString["fid"].ToString().Trim(); //显示组织结构图,每个节点对应一个checked按钮 myum.InitTree(TreeFrame.Nodes,strFid); } }子窗口中确定按钮的单击事件:private void btnOK_Click(object sender, System.EventArgs e) { //判断并提示职能选择一个checked按钮 this.getSelectedNodeCount(TreeFrame.Nodes); //获取所选的Fid字符串 string strSetFid = this.getSelectedFid(TreeFrame.Nodes); string strFrameInfo = myds.GetFrameInfo(int.Parse(strSetFid)); string fidframe = strSetFid+","+strFrameInfo; Session["fidFrame"] = fidframe;//关闭当前窗口,并重新装载父窗口Response.Write("<script language='javascript'>opener.location.reload();window.close();</script>"); } } Response.Write("<script language='javascript'>opener.location.reload();window.close();</script>");向现在这样的刷新方式没有问题啊 用 get 方式就可以了!至于你说的使用get 不提交?? 是指的那部分啊? 完全没有必要通过Session 来传递值,你可以在子窗口关闭前调用父窗口的一个JavaScript方法,将值作为方法的参数,不就可以改变父窗口的值了吗?如下:父窗口页面定义一个JavaScript方法: function setValue(value){ FormName.ElementName.value = value; }子窗口在关闭前调用: opener.window.setValue(value); <a href="javascript:" class="CPU_del">删除</a> 在线急等关于ie8的现实问题 急求正则 javascript自动构建table后,源文件发生了变化,且不再相应任何事件,请高手帮忙看看! 请问call(),apply()的具体用法 请教 再问:iframe的自适应高度问题! 请文层的颜色 根据天数算日期 js判断浏览器是否安装了指定扩展名的代码是什么呢 高手请看,100分 请问用JavaScript如何判断本地文件是否存在
父窗口中打开子窗口的代码:
this.btnSelectCtl.Attributes.Add("onclick","window.open('select.aspx?id=0','newwin','toolbar=no,menubar=no,status=no,location=no,resizable=no,scrollbars=no,width=300,height=400,top=100,left=240');return false;");
子窗口传过来值的获取if ( Session["fidFrame"] != null)
{
string[] strFidFrame = Session["fidFrame"].ToString().Trim().Split(',');
this.txtFrameInfoLCtl.Text = strFidFrame[1].ToString();
this.txtFrameInfoFid.Text = strFidFrame[0].ToString();
}子窗口中的load函数
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面 if(!this.IsPostBack)
{
//参数fid,标明根节点的fid
string strFid = Request.QueryString["fid"].ToString().Trim(); //显示组织结构图,每个节点对应一个checked按钮
myum.InitTree(TreeFrame.Nodes,strFid);
}
}
子窗口中确定按钮的单击事件:
private void btnOK_Click(object sender, System.EventArgs e)
{
//判断并提示职能选择一个checked按钮
this.getSelectedNodeCount(TreeFrame.Nodes); //获取所选的Fid字符串
string strSetFid = this.getSelectedFid(TreeFrame.Nodes);
string strFrameInfo = myds.GetFrameInfo(int.Parse(strSetFid)); string fidframe = strSetFid+","+strFrameInfo;
Session["fidFrame"] = fidframe;
//关闭当前窗口,并重新装载父窗口
Response.Write("<script language='javascript'>opener.location.reload();window.close();</script>");
}
}
向现在这样的刷新方式没有问题啊 用 get 方式就可以了!至于你说的使用get 不提交?? 是指的那部分啊?
父窗口页面定义一个JavaScript方法:
function setValue(value){
FormName.ElementName.value = value;
}子窗口在关闭前调用: opener.window.setValue(value);