Jqgrid 如何根据url参数的变化刷新表格内容?

Jqgrid 如何根据url参数的变化刷新表格内容?,第1张

你好提问者:

大体流程是这样的:

首先你说的那个组织目录呢,在他点击的时候会链到不同的页面显示不同的数据!

加载JQGrid url会找相应的action,查询数据,然后回显! 这里有段jqGrid的代码,仅供参考!

jsp页面

<%@ page language="java" pageEncoding="utf-8"%>

<%@ taglib uri="/sys-tags" prefix="tl"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

 <head>

    <title>文章分类</title>

  </head>

 <body>

  <div class="search_tit">文章分类</div>

  <form method="post" target="_blank">

   <table class="search_table">

    <tr>

     <td>

      <div>

      分类名称:

      </div> 

      <input class="search_text" type="text" name="catname" id="catname" />

     </td>

     <td>

      <input id="submitButton" class="button" value="搜索" type="button" onclick="submitKey(1)"/>

    <input id="submitButton" class="button" value="添加分类" type="button" onclick="articleCatAdd()"/>

      </td>

    </tr>

  </table>

 </form>

 <table id="gridTable"></table>

 <div id="gridPager"></div>

</body>

</html> 

js 脚本:

    $("#gridTable").jqGrid({

        url:webRoot +'admin/articleQueryAll.action',

        datatype: "json",

        mtype:"POST",

        shrinkToFit:false,

        autoScroll: true,

        width:700,

        forceFit:false,

        cache: false,

        colNames:['文章编号','分类编号','文章题目','文章url', '文章作者', '作者的email', '关键字','状态','描述','排序',' *** 作'],

        colModel:[{name:'artid',index:'art_id',sortable:true,hidden:true,sorttype:"int"},

                {name:'catid',index:'cat_id',hidden:true,sortable:true,sorttype:"int"},

                {name:'arttitle',index:'art_title',width:"100px",sortable:true},

                {name:'arturl',index:'art_url',sortable:true,width:"220px"},

                {name:'artauthor',index:'art_author',sortable:true,width:"80px"},

                {name:'artauthoremail',index:'art_author_email',sortable:true,hidden:true},

                {name:'artkeywords',index:'art_keywords',sortable:true,hidden:true},

                {name:'isdelete',index:'is_delete',sortable:true,width:"80px",align:"center",formatter:'select', editoptions:{value:"0:<img style='cursor:pointer' value='0' title='启用' src='"+webRoot +"WEB-FACE/css/images/yes.gif' />1:<img style='cursor:pointer' value='1' title='禁用' src='"+webRoot+"/WEB-FACE/css/images/no.gif' />"}},

                {name:'artdesc',index:'art_desc',sortable:true,hidden:true},

                {name:'sortorder',index:'sort_order',width:"80px",sortable:true,align:"center"},

                {name:'act',index:'act',sortable:false,width:"110px"},

        ],

        sortname:'art_id',

        sortorder:'desc',

        rowNum:10,

        rowList:[10,25,50],

        viewrecords:true,

        jsonReader: {

                root:"dataRows",                // 数据行(默认为:rows)

                page: "currPage",               // 当前页

                total: "totalPages",            // 总页数

                records: "totalRecords",        // 总记录数

                repeatitems : false             // 设置成false,在后台设置值的时候,可以乱序。且并非每个值都得设

        },

        prmNames:{rows:"articleSelectKey.pageSize",page:"articleSelectKey.currPage",sort:"articleSelectKey.orderBy",order:"articleSelectKey.order"},

        pager:"#gridPager",

       // caption: "品牌信息列表",

        onSortCol: function(index, sortorder){

         var curPage = $(".ui-pg-input").val()

         submitKeyArticle(curPage)

        },

        onPaging: function(pgButton){

       // caption: "品牌信息列表",获取控件里的值

         var arttitle = $("input[name='arttitle']").val()

         

         var totalPages = $("#gridTable").jqGrid('getGridParam', 'lastpage')

         if(/^[0-9]*[1-9][0-9]*$/.test($.trim($(".ui-pg-input").val()))){

          if(totalPages - $.trim($(".ui-pg-input").val()) < 0){

          $(".ui-pg-input").val(totalPages)

          }

         }

         

   $("#gridTable").jqGrid('setGridParam',{  

        datatype:'json',  

       postData:{'articleSelectKey.arttitle':arttitle},

       })

        },

        //获取前台页面的状态  是否在线

        onCellSelect:function(rowId,cellCount){

         var data = $("#"+rowId +">td")

         var artid = data[0].innerHTML

         if(cellCount == 7){

          openStore(artid,rowId)

         }

        },

        // caption: "品牌信息列表",获取列表里的 *** 作值

        gridComplete: function(){

         if(permissionId!="" && permissionId==1){

       var ids = jQuery("#gridTable").jqGrid('getDataIDs')

       for(var i=0i < ids.lengthi++){

        var cl =jQuery("#gridTable").jqGrid('getRowData', ids[i])

        var actions = "<div><nobr><a href='#' class='listwordbtn' onclick='editArticle(" + cl.artid+")'>编辑</a><a href='#' class='listwordbtn'  onclick='articleDelete(" + cl.artid+")'>删除</a></nobr></div>" 

        jQuery("#gridTable").jqGrid('setRowData',ids[i],{act:actions})

       } 

         }

     }

        }).navGrid('#gridPager',{edit:false,add:false,del:false,search:false})

// 确定键_根据条件查询

function submitKeyArticle(curPage){

    var arttitle = $("input[name='arttitle']").val()

 $("#gridTable").jqGrid('setGridParam',{  

    datatype:'json',

    postData:{'articleSelectKey.arttitle':arttitle},

    page:curPage

   }).trigger("reloadGrid")

}

//添加

function articleAdd(){

 $(".index_page").load(webRoot + "admin/articleManageShow.action?_="+Math.random()+"&pageset.pageType=1")

}

//编辑_修改

function editArticle(artid){

 $(".index_page").load(webRoot + "admin/articleManageShow.action?_="+Math.random()+"&pageset.pageType=2&ids=" + artid)

}

//返回展示类表

function toGrid() {

 $(".index_page").load(webRoot + "admin/articleManageShow.action?_="+Math.random()+"&pageset.pageType=0")

}

//上线

function openStore(artid,rowId){

 if(permissionId==""||permissionId==0){

  return

 }

 $.post(webRoot +"admin/isDeleteArticle.action", { artid : artid},

  function(data) {

  var res = eval(data)

  $("#"+rowId+" td").each(function(i){

   if(i==7){

    if(res.commitType == 0){

     $(this).html("<img style='cursor:pointer' value='0' title='启用' src='" + webRoot + "WEB-FACE/css/images/yes.gif' />")

    } else{

     $(this).html("<img style='cursor:pointer' value='1' title='禁用' src='" + webRoot + "WEB-FACE/css/images/no.gif' />")

    }

   }

  })

 })

}

//删除

function articleDelete(artid){

 if(confirm("确定删除?")){

 $.post(webRoot +"admin/getArtidDelete.action?pageset.pageType=3", {ids:artid}, 

 function(data){

 var result = eval(data)

 showDialog(result.message,webRoot + "admin/articleManageShow.action?pageset.pageType=0")

 })

 }

}

jQuery("#grid_id").navButtonAdd('#pager',{ caption:"Excel",buttonicon:"ui-icon-excel",onClickButton: function(){ alert("导出excel") },position:"last"})

jQuery("#list2").jqGrid('navGrid','#pager2',{edit:false,add:false,del:false})

把id是pager2的dom元素设置成jqGrid的控制条就是有刷新,添加,删除,页数等信息的容器。默认添加、修改、删除都是现实的{edit:false,add:false,del:false}设置的就是不显示编辑、添加、删除按钮


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11418073.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存