web前端:datatable 局部刷新之单元

    作者:apuyuseng 更新于: 2020-03-03 11:08:53

    Web开发

      Ajax的核心是Javascript对象XML Http Request。该对象在InternetExplorer5中首次引入,它是一种支持异步请求的技术。简而言之,XmlHttpRequest使您可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。

      需求:

      1.对某一列进行动态更新。

      2.不能对表格状态更改,如选中状态、当前页数、筛选等。

      这样我们使用draw、ajax.reload等都不能满足第二个需求。幸好发现一个apicell().data()可以实现上面的需求。对此进行了封装来满足需求。

      $.fn.dataTable.Api.register('partUpdate',function(col){

      varapi=this;

      varSdata=api.data().data()

      $.ajax({

      url:api.ajax.url(),

      data:api.ajax.params(),

      contentType:"application/json;charset=utf-8",

      dataType:"json",

      type:'post',

      success:function(resp){

      vardata=resp.data;

      varerror=resp.error;

      if(error!=null||error!=undefined){

      alert(error)

      returnfalse;

      }

      varfield=table.column(col).dataSrc()

      $.each(Sdata,function(index,Sitem){

      $.each(data,function(_i,item){

      if(item!=undefined&&item.id==Sitem.id){

      if(Sitem[field]!=item[field]){

      table.cell(index,col).data(item[field])

      }

      deletedata[_i]

      returnfalse;

      }

      })

      })

      }

      })

      });

      我们注册apipartUpdate,在内部ajax访问数据源,将得到数据和原来数据进行对比,然后进行单元格更新。

      ajax,国内翻译常为“阿贾克斯”和阿贾克斯足球队同音。web应用的交互如Flickr,Backpack和Google在这方面已经有质的飞跃。这个术语源自描述从基于Web的应用到基于数据的应用的转换。在基于数据的应用中,用户需求的数据如联系人列表,可以从独立于实际网页的服务端取得并且可以被动态地写入网页中,给缓慢的Web应用体验着色使之像桌面应用一样。

课课家教育

未登录