我现在有个需求,页面初步加载,从数据库里面取出一定的数据,然后绑定到gridview中。但是有一列是状态列,我想定时自动刷新这一列,根据数据库中的状态不同自动刷新gridview里面的状态,但是不想刷新整个页面和gridview,只是刷新gridview的一列,请问有什么好的方式吗?

解决方案 »

  1.   

    想局部刷新 就要 用ajax想只刷新gridview 的一列  你还不如直接刷新整个 gridview呢ajax 定时请求, 获取请求页面的内容 返回  覆盖 当前页的gridview
      

  2.   

    因为可能定时时间很短,如果刷新整个gridview,整个页面也许就是一直在刷新了
      

  3.   

    ScriptManager、UpdatePanel
    用Ajax
    jQuery.getJSON( url, [data], [callback] )  跨域加载JSON数据。
    url:     发送请求的地址
    data : (可选) 待发送key/value参数
    callback: (可选) 载入成功时的回调函数
    或者
    $.ajax({ 
       type: "POST", 
       url: "some.php", 
       data: "name=John&location=Boston", 
       success: function(data){ 
         alert( "Data Saved: " + data );  
         //服务端可以将状态放在一个数组data或者Json中,然后你循环绑到GridView生成的客户端Table中
          $("#<%=GridView1.ClientID%> tr").each(function(i){
               $(this).find("td:eq(4)").html(data[i]);
          });
         //或者你也可以通过返回的data来遍历,给td绑值
       } 
    });
      

  4.   

    $(this).find("td:eq(4)") 其中4是表示你要操作的列索引,从零开始
      

  5.   

    这样的话是不是会比较慢。遍历一个gridview30行的话能支持2秒一次刷新吗?
      

  6.   

    如果你是要求这样的功能,我觉得你还是自定义table来存放你的数据。
      

  7.   


    自定义table如何做?gridview生成的也是table啊。有何不同呢?
      

  8.   

    UpdatePanel
    刷新整个Gridview
    罩住就行了。。
    另外用JQUERY 也可以比如jQgrid
      

  9.   

    更改DOM对象
      

  10.   

    用javascript或是用.net的ajax控件
      

  11.   

    真的只刷一列的就gridview好像不行,对第三方控件也不清楚
    基本好像都是局部刷新整个gridview的。
      

  12.   

    http://dotnet.aspx.cc/article/d94323a7-e322-4ead-9f25-6e6629c8012e/read.aspx
    使用 AJAX,局部刷新 GridView 进行数据绑定的简单实现
      

  13.   

    要不你用两个gridview那个列要不停刷新的用一个独立的
      

  14.   

    现在只能想到这个了,因为刷新就要重新绑定,但是gridview怎么绑定一个列?还是用两个吧,每次刷新只从gridview中读取一列出来就OK了
      

  15.   

    跟dongxinxi說的一樣思路就可以了。
    用ajax定時獲取數據,然後操作DOM把GRID的元素更新掉即可。
      

  16.   

    http://dotnet.aspx.cc/article/d94323a7-e322-4ead-9f25-6e6629c8012e/read.aspx