我用window.open(123.aspx)打开了一个窗口。然后在123.asp将返回值传给父窗口。
window.opener.document.getElementById("Lable1").innerText=returnValue;就是改变父窗口labl1的值,可以看到确实改变了。但我把这个值插入到数据库中的时候。。确没变化~~
我想知道为什么。。?
而且我发现一旦点击了面页上的button他的值就丢了。。我怀疑是刷新掉了。请问这么办才能把这个值真的给labl1、然后我能擦如入道数据库中?

解决方案 »

  1.   

    在父窗口添加一个隐藏域<input type=hidden>
    再把值赋给这个隐藏域
    页面回发时通过Request["隐藏域名]
      

  2.   

    你在父级页面放个<asp:TextBox ID="txtID" style="display:none">然后在弹出的页面,window.opener.document.getElementById("txtID").value=returnValue;你父级页面取值就取txtID的值。
      

  3.   

    你用的是js的方法 也就是在客户机上操作 并没有在服务端操作。也就是说你只是该了客户机上的显示而已 没有修改实际的值。
    用post方法把值传回服务器 然后在服务器修改label的值就OK了
      

  4.   

    为什么要是txtbox呢,labl不行么?两者的区别是什么?
      

  5.   


    确实,,用txtbox就可以。。为啥呢??
      

  6.   

    jquery,ajax 页面间传值最方便