现在做网站突然碰到了个问题有个 页面A。aspx(有个 gridview控件) 我用linkbuttong  打开了一个新的窗口B。aspx 用的是js的 window.open  A.aspx 没有关闭 我想的在 b。aspx窗口 处理完数据后点击一个按钮 调用A。aspx的方法 填充gridview里模板列里德textbox  因为用控件在 所以 静态方法用不了 也不能吧gridview改才成静态的 听说用Ajax 很容易就能解决 问题是我 从来没用过ajax 能也给一段 类似上面的代码的 列子吗 (其实就是 两个页面的 方法互相调用) 

解决方案 »

  1.   

    google
    asp.net ajax的应用
      

  2.   

    如果是对数据库操作,让a显示及时数据的,可以在子窗口中用js方法让a页面刷新就行了吧
      

  3.   

    这种操作最好用
    var whandle = window.showModalDialog(url,obj,"dialogWidth=360px;dialogHeight=460px;center:yes; help:no; resizable:no; status:no");比较好吧!window.open的话,人家把你a页面关了咋办?
      

  4.   

    我很想回答你,可是ajax要说完手都痛了
    你还是看一下我的这个博客吧
    http://blog.csdn.net/wen158809179/archive/2010/02/04/5287454.aspxJquery是个好东西,多浏览器支持是主要的
      

  5.   

    symbol_bc  window.showModalDialog 我其实用的就是这个 一对话窗口打开页面 但问题不在这 在怎么调用 a。aspx 的方法()
      

  6.   


    //页面a上的一个方法
    var fun = function(){
        alert("this is page a");
    }//打开模式对话框
    var opendialog = function(){
    //将当前页面句柄作为参数传到b页面
        var whandle = window.showModalDialog("b.aspx",window,"dialogWidth=360px;dialogHeight=460px;center:yes; help:no; resizable:no; status:no");
    }
    //页面b
    document.onreadystatechange = function(){
        if(document.readyState == "complete"){
            var pwin = window.dialogArguments;
            pwin.fun();//调用页面a方法
    }
    }
      

  7.   

    哦,楼主,才发现有个问题需要搞清一下,
    你说的a.aspx的方法是指的js方法还是后台c#啊????
      

  8.   

    呵呵 后台的cs里呀  要是 js的 那我还用什么ajax的呀 不过还能是谢谢你
      

  9.   

    没问题啊,那就要问一下你的ajax框架是什么啊????
      

  10.   

    不好意识 我用vs2008 开发 ajax 一次也没用过 不动框架 哈哈 说以悲剧了
      

  11.   

    呵呵,还有一种办法
    就是用js画一个窗口在本页显示,用iframe
    这样就很方便了
      

  12.   

    lz您的意思是:比如我做修改或者添加的时候得让a页面的数据随着更新?
    如果是这样的。方法二:
    一、让a刷新吧(这个不满足你的要求,你需要的是前台还有些数据状态要)
    二、用Ajax去后台得到数据返回json对象,然后在用js拼接一table字符串吧,将其添加到你
    gridview,替换掉
    用document.getElementByID("gridview层,这个具体看你的返回后的html的id").innerHTML=字符串