это связано с моим последним вопросом в этой ссылке . Я уже выяснил, в чем ошибка, почему он отображает «Ошибка сервера: Параметр dataType не указан». Это filter="[{'name':'main_account_group_code','comparison':'starts_with','value':$('#searchCode').val()}]";
до
filter=[{'name':'main_account_group_code','comparison':'starts_with','value':$('#searchCode').val()}];
Теперь моя сетка успешно отображает данные в поиске. У меня вопрос, есть ли другой способ сделать это без использования глобальной переменной? Мой старший сказал мне, что это плохая практика и попробовать что-то еще. У меня также есть ощущение, что есть еще один лучший способ отображения моих поисковых данных в jqgrid (вместо использования глобальных), но я просто не знаю, как это сделать.
Я уже несколько дней решаю эту проблему самостоятельно, но все же у меня все еще нет лучшего способа, как это сделать (все еще застрял). кто-нибудь помочь ..
EDIT:
Это мой код jqgrid.
$("#list1").jqGrid({
url: '',
datatype: 'local',
jsonReader : {
root: function(obj) {
var root = [];
if ('error' in obj)
{
showMessage(obj.error['class'] + ' error: ' + obj['error']['msg']);
}
else
{
$.each(obj['result']['main']['rowdata'], function(rowIndex, rowDataValue) {
var row = {};
$.each(rowDataValue, function(columnIndex, rowArrayValue) {
var fldName = obj['result']['main']['metadata']['fields'][columnIndex].name;
row[fldName] = rowArrayValue;
});
root[rowIndex] = row;
});
};
return root;
},
page: "result.main.page",
total: "result.main.pageCount",
records: "result.main.rows",
repeatitems: false,
id: "0"
},
colNames:['Code', 'Description','Type'],
colModel:[
{name:'code'},
{name:'desc'},
{name:'type'}
],
postData: {
filters:[{"name":"main_account_group_code", "comparison":"starts_with", "value":$('#searchCode').val()}]
},
rowNum:10,
viewrecords: true,
rowList:[10,50,100],
pager: '#tblDataPager1',
sortname: 'desc',
sortorder: 'desc',
loadonce:false,
height: 250,
caption: "Main Account"
});