#javascript #jquery #asp.net #jqgrid
#javascript #jquery #asp.net #jqgrid
Вопрос:
Я использую следующий скрипт для загрузки данных в jqgrid на основе события изменения выпадающего значения
Это сработает только один раз.Если я выберу второй вариант в раскрывающемся списке, сетка не сможет попасть по URL-адресу
$(document).ready(function () {
$("#skill").on('change', function () {
$("#Jobtable").jqGrid({
url: '/Admin/ViewSelectedJobs?skill=' $("#skill").val(),
datatype: "json",
mtype: 'GET',
colNames: ['ID', 'Title'],
colModel: [
{ name: 'ID', index: 'ID', width: 150, align: 'left', editable: true },
{ name: 'Title', index: 'Title', width: 150, align: 'left', editable: true }
],
rowNum: 10,
rowList: [10, 20, 30],
viewrecords: true,
loadonce: true,
gridview: true
});
})
Ответ №1:
Вы должны сначала выгрузить сетку, а затем загрузить ее снова, используя приведенный ниже jQuery :
$("#Jobtable").jqGrid('GridUnload');
Таким образом, ваш код должен быть :
$("#skill").on('change', function () {
$("#Jobtable").jqGrid('GridUnload');
$("#Jobtable").jqGrid({
url: '/Admin/ViewSelectedJobs?skill=' $("#skill").val(),
datatype: "json",
mtype: 'GET',
colNames: ['ID', 'Title'],
colModel: [
{ name: 'ID', index: 'ID', width: 150, align: 'left', editable: true },
{ name: 'Title', index: 'Title', width: 150, align: 'left', editable: true }
],
rowNum: 10,
rowList: [10, 20, 30],
viewrecords: true,
loadonce: true,
gridview: true
});