gpt4 book ai didi

javascript - 单击按钮后 JqGrid 不会重新加载

转载 作者:行者123 更新时间:2023-11-30 10:26:27 25 4
gpt4 key购买 nike

我在我的项目中使用 jqGrid,我有一个问题,即使在阅读了关于同一主题的论坛后似乎也无法解决。

当用户在选择日期后单击按钮时,我会重新加载网格。我要流量充值通讯员选择日期。

我使用以下代码:

var loadfacture  = false;

$('#btn-facture').click(function(){

if(!loadfacture){

$("#factures").jqGrid({
url:'loadfactureencours.json',
datatype: "json",
autowidth: true,
height:250,
colNames:['#','Numero','Date', 'Client','Serveur','Prix Total','Avance','Regler','Notes'],
colModel:[
{name:'idfac',index:'idfac', width:45,align:"center"},
{name:'numfac',index:'numfac', width:80,align:"center"},
{name:'datefac',index:'datefac', width:150,align:"center"},
{name:'client',index:'client', width:145,align:"center"},
{name:'utilisateur',index:'utilisateur', width:125,align:"center"},
{name:'montant',index:'montant', width:70,align:"center"},
{name:'avance',index:'avance', width:60,align:"center"},
{name:'regler',index:'regler', width:50,align:"center"},
{name:'description',index:'description', width:150, sortable:false}
],
rowNum:10,
rowTotal: 2000,
rowList : [10,20,30,40,50,60],
loadonce:true,
mtype: "GET",
postData: {
day: function () {
return $('#daySelect').val();
}
},
rownumbers: false,
rownumWidth: 40,
gridview: true,
pager: '#paging',
sortname: 'idfac',
viewrecords: true,
sortorder: "desc",
caption: "",
ondblClickRow: function(rowid,iRow,iCol,e){
var rowData = jQuery(this).getRowData(rowid);
console.log(rowData);
window.location = "ecrancommandebar.html?num="+rowData.numfac;
}
});

$("#factures").jqGrid('navGrid','#paging',{del:false,add:false,edit:false});
loadfacture = true;


}else{

var grid = $("#factures");
grid.trigger("reloadGrid",[{current:true}]);

}

});

我通过阅读关于同一主题的论坛来构建这段代码,但是第一次加载网格然后当我在更改日期后单击按钮时没有任何反应。

你怎么了?感谢您的反馈。

最佳答案

您使用 loadonce:true 选项将 datatype 从初始 "json" 更改为 "local"第一次从服务器加载数据。它允许支持数据的本地排序、分页和过滤。因此,您应该了解 grid.trigger("reloadGrid",[{current:true}]); 只会重新加载先前保存的响应中的数据。因此,在您将 datatype 参数的值重置为 "json" 之前,不会从服务器重新加载。换句话说,您应该将 else 部分重写为以下内容

...
} else {
$("#factures").jqGrid("setGridParam", {datatype: "json"})
.trigger("reloadGrid", [{current: true, page: 1}]);
}

关于javascript - 单击按钮后 JqGrid 不会重新加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19375610/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com