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

2024-11-03 00:56:48
推荐回答(1个)
回答1:

你好提问者:

     大体流程是这样的:

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

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

jsp页面
<%@ page language="java" pageEncoding="utf-8"%>
<%@ taglib uri="/sys-tags" prefix="tl"%>


 
    文章分类
  
 
  文章分类

  
   
    
     
      

      分类名称:
      
 
      
     
     
      
    
      
    
  
 
 
 


 

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:;1:"}},
                {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=0;i < ids.length;i++){
        var cl =jQuery("#gridTable").jqGrid('getRowData', ids[i]);
        var actions = "
编辑删除
"; 
        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("");
    } else{
     $(this).html("");
    }
   }
  });
 });
}
//删除
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");
 });
 }
}

相关问答
最新问答