我有一个用jqGrid创建的表(使用JSON POST数据生成)。导航效果很好。 我设置了显示搜索按钮的选项。
当我点击显示的选项时......但没有进行任何研究......
研究是在数组元素中使用Javascript完成的,还是指定了在Ajax中搜索的URL?
这是我的代码。
<div id="liste">
<div id="messagebox"></div>
<div id="filter"></div>
<table id="list" class="scroll" cellpadding="0" cellspacing="0"></table>
<div id="pager" class="scroll" style="text-align:center;"></div>
</div>
<script type="text/javascript">
$(document).ready(function(){
$("#list").jqGrid({
url:'/admin/statistique/getjson/',
datatype: 'json',
mtype: 'POST',
colNames:['','Nom','Visites Totales', 'Visites Uniques','Contact'],
colModel:[
{name:'edition',index:'edition', sortable:false,editable: false,width:15, align:"center"},
{name:'etablissement_nomAMarrakech',index:'etablissement_nomAMarrakech', sortable:true, editable: false,width:150, align:"center"},
{name:'',index:'', sortable:false, editable: false,width:200, align:"center"},
{name:'',index:'', sortable:false, editable: false,width:200, align:"center"},
{name:'',index:'', sortable:false, editable: false,width:240, align:"center"}
],
pager: '#pager',
rowNum:10,
rowList:[10,25,50,100,300],
sortname: 'etablissement_nomAMarrakech',
viewrecords: true,
autowidth: true,
rownumbers: false,
gridview : true,
sortorder: "desc",
caption:"Aperçu des statistiques"
});
jQuery("#list").jqGrid('navGrid','#pager',{edit:false,add:false,del:false,search:false,refresh:false});
});
</script>
这是一个屏幕
正如您所看到的,当我提交表单时,JQGrid会写“正在加载...”但是没有行检查......
此致
答案 0 :(得分:2)
您使用
name:'',index:''
在网格的三列定义中。这是错误的。您可以与尝试使用名称为''。
的三个属性声明类的代码进行比较 name
属性是强制性的。它必须是唯一的,不能等于保留名称('rn','cb'和'subgrid')中的一个,并且不应包含jQuery选择器中使用的任何元字符,如'。',''等等(见here)。
此外,如果您使用datatype: 'json'
而不使用loadonce: true
,则服务器将负责数据过滤。在搜索请求中,将发送对服务器的新请求,其中包含附加请求
参数如&searchField=edition&searchString=Spa&searchOper=cn
。服务器应该将过滤后的数据返回给jqGrid。