jqgrid navgrid不在标签内工作

问题描述:

我有查看显示使用jqgrid的文档列表。当我点击网格中的文档标题时,我创建了一个带有局部视图的弹出窗口,并在这个局部视图中使用了Kendo选项卡。在其中一个选项卡中,我使用局部视图来加载显示所有文档日志的jqgrid,并且在此网格中,我的navgrid无法工作。当我点击下一个按钮导航到下一个页面时,它实际上是浏览我拥有文档列表的主页面。为了避免混淆,我在局部视图中为navgrid使用了不同的'id',但是它根本没有显示下一个和上一个按钮。任何人都可以指导我如何在不影响父视图的情况下向分部视图添加分页。jqgrid navgrid不在标签内工作

下面是主视图中的jqGrid代码:

$.ajax(
    { 
     type: "GET", 
     url: "@Url.Action("GetDocumentFileList", "Document")", 
     data: "", 
     dataType: "json", 
     success: function (data) { 
      if (data == "SessionTimeOut") 
       window.location.href = '@Url.Action("SessionTimeOut", "Error")'; 
      var page = data.Page; 
      var rows = data.Rows; 
      var colModel = eval(data.Columns); 
      var colNames = eval(data.ColumnsTitle); 
      var $grid = $("#datagrid"); 
      $grid.jqGrid({ 
       url: "@Url.Action("GetDocumentFileList", "Document")", 
       datatype: griddataType, 
       datastr: rows, 
       colNames: colNames, 
       colModel: colModel, 
       gridComplete: initGrid, 
       rowList: [25, 50, 75, 100], 
       ignoreCase: true, 
       width: null, 
       shrinkToFit: true, 
       multiselect: true, 
       multiboxonly: false, 
       pager: '#navGrid', 
       sortname: 'DocumentRegisterID', 
       sortorder: "desc", 
       scrollerbar: true, 
       viewrecords: true, 
       rowNum: 25, 
       autowidth: true, 
       ondblClickRow: function (DocumentRegisterID) { 
        if (DocumentRegisterID && DocumentRegisterID !== lastsel2) { 
         $grid.jqGrid('restoreRow', lastsel2); 
         $grid.jqGrid('editRow', DocumentRegisterID, true, null, successFuncStandardGrid); 
         lastsel2 = DocumentRegisterID; 
        } 
       }, 
       editurl: "@Url.Action("EditDocumentNo", "Document")", 
       hoverrows: true, 
       onSelectRow: function() { 
        return false; 
       }, 

这里是在主视图弹出使用的局部视图中的jqGrid代码:

$.ajax(
{ 
    type: "GET", 
    url: "@Url.Action("DocHistoryEventLog", "Document")", 
    data: '', 
    success: function (data) { 
     var page = data.Page; 
     var rows = data.Rows; 
     var $grid = $("#dataeventgrid"); 
     $grid.jqGrid({ 
      url: "@Url.Action("DocumentRegisterHistoryEventLogList", "Document", new { id = @docId })", 
      datatype: "json", 
      datastr: rows, 
      colNames: ['DocumentRegisterEventLogID', 'Event Type', 'Description', 'Revision', 'Version', 'Log By', 'Log Date', 'Organization Name', 'Document Owner Organization'], 
      colModel: [ 
       { name: 'DocumentRegisterEventLogID', index: 'DocumentRegisterEventLogID', key: true, hidden: true }, 
       { name: 'EventType', index: 'EventType', width: "20%", resizable: true }, 
       { name: 'EventDescription', index: 'EventDescription', sorttype: 'text', width: "20%", resizable: true }, 
       { name: 'Revision', index: 'Revision', width: "15%", sorttype: 'text', resizable: true }, 
       { name: 'DocVersion', index: 'DocVersion', width: "20%", resizable: true }, 
       { name: 'LogBy', index: 'LogBy', sorttype: 'text', width: "20%", resizable: true }, 
       { 
        name: 'StrLogDate', index: 'StrLogDate', sorttype: 'text', width: "25%", resizable: true, 
        searchoptions: { sopt: ["eq", "ne", "lt", "le", "gt", "ge"], dataInit: initDatepicker }, 
       }, 
       { name: 'OrganizationName', index: 'OrganizationName', sorttype: 'text', width: "20%", resizable: true }, 
       { name: 'DocumetOwnerOrganizationName', index: 'DocumetOwnerOrganizationName', width: "20%", sorttype: 'text', resizable: true }, 
      ], 
      rowList: [15, 30, 45, 100], 
      loadonce: false, 
      shrinkToFit: true, 
      ignoreCase: true, 
      pager: '#navLogGrid', 
      autoencode: true, 
      sortname: 'DocumentRegisterEventLogID', 
      sortorder: "desc", 
      viewrecords: true, 
      rowNum: 15, 
      width: 850, 
      height:270, 
      gridview: true, 
      height: "auto", 
      scrollerbar: true, 
      loadComplete: function() { 
       highlightFilteredData.call(this); 

      }, 
      loadError: function (jqXHR, textStatus, errorThrown) { 
       alert('HTTP status code: ' + jqXHR.status + '\n' + 
         'textStatus: ' + textStatus + '\n' + 
         'errorThrown: ' + errorThrown); 
       alert('HTTP message body (jqXHR.responseText): ' + '\n' + jqXHR.responseText); 
      } 
     }); 

     $grid.jqGrid('filterToolbar', { stringResult: true, searchOnEnter: false, defaultSearch: "cn", stype: 'select' }); 
     $grid.jqGrid("navGrid", "#navLogGrid", { add: false, edit: false, del: false, search: false, refresh: true }); 
     $grid.parents('div.ui-jqgrid-bdiv').css("max-height", '270px'); 

设置属性loadonce:真正在我的部分观点解决了我的问题。谢谢