2014-02-09 2 views
0

Загружаю jqgrid с выпадающими значениями, используя событие onchange.Как перезагрузить jqGrid с новым значением строки запроса

Но когда я снова выбираю другое значение в раскрывающемся списке, мне нужно, чтобы jqgrid отображал соответствующие значения.

Здесь S, как я загружаю jqgrid

function getGrid() { 

var mOptometrist = $('#optOptometristList').val();// Drop down value 

alert(mOptometrist); 

//jQuery("#list").jqGrid().setGridParam({ url: 'Schedule.ashx?mOptometristId=' + mOptometrist + '' }).trigger("reloadGrid");  


jQuery("#jQGridDemo").jqGrid({ 
    url: 'Schedule.ashx?mOptometristId=' + mOptometrist + '', 
    datatype: "json", 
    colNames: ['Id', 'Day', 'Start Time', 'End Time', 'Interval', 'Session', "Patient", 'Slots', 'Room Number'], 
    colModel: [ 
        { name: 'SlNo', index: '_id', width: 20, stype: 'text', editable: true, editoptions: { disabled: true} }, 
        { name: 'DayOfWeek', index: 'Day', width: 150, stype: 'text', sortable: true, editable: true, edittype: "select", formatter: 'select', editoptions: { value: getAllSelectOptions()} }, 
        { name: 'StartTime', index: 'StartTime', width: 150, editable: true, formatter: 'date', formatoptions: { srcformat: 'u', newformat: 'H:i:s'} }, 
        { name: 'EndTime', index: 'EndTime', width: 60, editable: true, formatter: 'date', formatoptions: { srcformat: 'u', newformat: 'H:i:s'} }, 
        { name: 'Interval', index: 'Interval', width: 80, align: "right", editable: true }, 
        { name: 'Session', index: 'Session', width: 40, align: "right", editable: true }, 
        { name: 'PatientsPerSlot', index: 'Patient', width: 80, align: "right", editable: true }, 
        { name: 'Slots', index: 'Slots', width: 150, sortable: false, editable: true }, 
        { name: 'RoomID', index: 'RoomNumber', width: 100, sortable: false, editable: true } 
        ], 
    rowNum: 10, 
    mtype: 'GET', 
    loadonce: false, 
    rowList: [10, 20, 30], 
    pager: '#jQGridDemoPager', 
    sortname: '_id', 
    viewrecords: true, 
    sortorder: 'desc', 
    caption: "List Employee Details", 
    editurl: 'Schedule.ashx?mOptometristId= ' + mOptometrist, 
    loadComplete: function() { 

     $("#jQGridDemo").setColProp('Day', { editoptions: { value: "1:Sunday;2:Monday;3:Tuesday"} }); 


    } 
}); 

ответ

1

Вы можете использовать

url: "", 
postData: { 
    mOptometristId: function() { 
     return $('#optOptometristList').val(); 
    } 
} 

вместо

url: 'Schedule.ashx?mOptometristId=' + mOptometrist + '' 

Внутри onchange случае вам нужно просто позвонить $("#jQGridDemo").trigger("reloadGrid");. См. the answer для более подробной информации.

Смежные вопросы