在使用ajax.net过程中,出现一个问题,不知道大家是否遇到。
我想在页面上无刷新达到在DataGrid中编辑修改的效果,下面是实现的部分代码。
    this.BindData();
    System.IO.StringWriter sw = new System.IO.StringWriter();
    System.Web.UI.HtmlTextWriter htw = new HtmlTextWriter(sw);
    DataGrid1.RenderControl(htw);
    return sw.ToString();
当在编辑模式时我在Server端重新绑定数据替换新的Html达到与操作我们操作标准服务端控件
效果一致的编辑效果。
自己用javascript,xmlhttp可以实现需要的效果。
但是ajax.net采用的模式指定在客户端调用的类文件时,在页面上的DataGrid控件还没有实例化。
自己再来做实例化的工作就比较麻烦一些。
如果想采用他的这个框架大家一般怎么做?(感觉这个使用起来还是很方便,除了这一点)现在的目的是想把现在项目进行少量的修改达到无刷新效果.

解决方案 »

  1.   

    不是没有实例化,而是服务器缓存了,所以看不到修改后的效果
    服务器端后台加入以下语句:
    Response.Buffer = True Response.ExpiresAbsolute = Now() - 1 Response.Expires = 0 Response.CacheControl = "no-cache"
      

  2.   

    http://images.csdn.net/20051012/200505_src.rar
    下载下来里面有一个例子!
      

  3.   

    sorry.
    刚才那个网址给错了。
    现在这个
    http://mag.csdn.net/Temp/200504_src.rar
      

  4.   

    to: liuredstar(Flying) 
    先谢谢了。
    没有找到你说的例子.
      

  5.   

    你还真把Ajax当做回事呀?!我不信有人能解决你的问题,除非重写asp.net。Ajax与asp.net不兼容,你编辑DataGrid,以及其他交互操作,能用Ajax的话,Ajax也就不会像现在这样单靠鼓吹来传播了。
      

  6.   

    to: liuredstar(Flying) 
    多谢了!!
    现在可以实现这种效果,不过自己写的代码比较多,系统考虑相对不全面。
    所以打算使用ajax.net的已经不错的框架,功能也比较强。
    http://weblogs.asp.net/mschwarz/archive/2005/08/11/422293.aspx
    现在主要问题是ui的无刷新动态更新在使用上有些问题。有可能与它的一些设计有关系.
      

  7.   

    你说的“但是ajax.net采用的模式指定在客户端调用的类文件时,在页面上的DataGrid控件还没有实例化。”这句话是不对的。Ajax根本不跟你当前处理的页面实例交互,这是问题的根源。你把他的方法写在页面上,这是被他骗了。因为它的方法自己工作在自己的实例上,你以为操作它就能即时修改页面实例,结果根本它根本不知道页面实例也不更改页面。
      

  8.   

    to: sp1234(CSDN上我感兴趣的那些话题最近不多了) 其实我现在做的就是要达到与asp.net的无缝连接起来,即利用asp.net服务端控件的
    强大功能又能达到无刷新的效果。
    现在大部分功能都可以实现,自己实现都是可以做到的,
    不过代码写的很多,也没这个写的系统,才想用这个已经写好且开源的框架。还有一点我个人认为ajax不是单靠鼓吹来传播,他的使用价值还是非常值得深究(非常不错的用户体验,这点对我们项目很重要)
    打算在以后的开发过程中把其他的项目都采用这种模式.
      

  9.   

    那你首先要解决这个交互性的小问题。大多数实用的asp.net页面都是需要交互的,你同意吗?否则我们也根本没要用.net这种缓慢的平台。
      

  10.   

    http://weblogs.asp.net/mschwarz/
    http://community.csdn.net/Expert/topic/4426/4426025.xml?temp=.9113123
    http://ajax.schwarz-interactive.de/csharpsample/default.aspx
    对ajax研究过一小段时间,感觉还算是一门不错的技术,最少赞成其能实现页面部分更新,没有深入研究,上面几个页面都是介绍ajax的,自己看下吧!
      

  11.   

    是不是鼓吹,我们可以看行动。你可以把你的问题(编辑DataGrid其实是个asp.net上的小操作)放到国内外的Ajax论坛上,看看有没有人站在建筑师(而不是幼稚园小朋友新手涂鸦)的角度给你设计出明确的解决方案。
      

  12.   

    sorry! 新手 --> 信手
      

  13.   

    如果是自己写的来交互都没有问题,主要是用它的这个框架有这个ui更新问题,也可能没找到好的使用方法,自己写的一个实现以上这些功能都可以,不过有很多方面没有这个方便和考虑全面。正在研读他的源码。
    http://tz.yndns.com/controldemo/selectcontrol.aspx
    这里有我写的一个控件是采用自己写的一些js类实现的这些效果。弹出的就是一个DataGrid。
      

  14.   

    软件没有什么不可能的。所以我当然赞同“如果是自己写的来交互都没有问题”这个说法。问题其实很简单,上面也说过了,Atlas虽然写在页面类的内部,但是其实根本不与页面实例交互!!完全是独立的类似webService的method的东西。这个明显糊弄人的写法损害了二三十年来的编程结构化风格,非常烂。
      

  15.   

    这个问题已经解决了,感觉大家的热心。
    http://tz.yndns.com/controldemo/ZeroAjaxDemo/index.htm