2

当我从 triand-jqGrid 4.6.0 迁移到 free-jqGrid 4.8.0 时,形成中断(截图一)

这是因为我的 jqGrid 位于一个 div 内,position: absolute; z-index: 0;因此当编辑模式呈现在 jqGrid 的 gbox div 内并且覆盖层附加在主体 z-index 规则上时,会将对话框置于覆盖层之下。通过从 jqGrid.src.js 撤消此更改可以轻松纠正此错误(这意味着当我单击编辑按钮时,编辑表单显示在网格内,但在 html 中它附加在正文上)。

但是,当我在 gitHub(即将推出的 jqGrid 4.9.0)中尝试最新代码时,形成对话框的呈现似乎已经改变。因为当我修改 jqGrid.src.js(将 toTop 设置为 true)时,表单编辑对话框会呈现在浏览器的左上角(截图 2)

这是 JSFiddle链接

jQuery("#navgrid").jqGrid({
  datatype: "xmlstring",
  datastr: mystr,
  colNames:['Inv No','Date', 'Client', 'Amount','Tax','Total','Closed','Ship via','Notes'],
  colModel:[
    {name:'id',index:'id', width:55,editable:false,editoptions:{readonly:true,size:10}},
    {name:'invdate',index:'invdate', width:80,editable:true,editoptions:{size:10}},
    {name:'name',index:'name', width:90,editable:true,editoptions:{size:25}},
    {name:'amount',index:'amount', width:60, align:"right",editable:true,editoptions:{size:10}},
    {name:'tax',index:'tax', width:60, align:"right",editable:true,editoptions:{size:10}},      
    {name:'total',index:'total', width:60,align:"right",editable:true,editoptions:{size:10}},
    {name:'closed',index:'closed',width:55,align:'center',editable:true,edittype:"checkbox",editoptions:{value:"Yes:No"}},
    {name:'ship_via',index:'ship_via',width:70, editable: true,edittype:"select",editoptions:{value:"FE:FedEx;TN:TNT"}},
    {name:'note',index:'note', width:100, sortable:false,editable: true,edittype:"textarea", editoptions:{rows:"2",cols:"20"}}      
  ],
  rowNum:10,
  rowList:[10,20,30],
  pager: '#pagernav',
  iconSet: "fontAwesome",
  cmTemplate: { autoResizable: true },
  shrinkToFit: false,
  autoresizeOnLoad: true,
  autoResizing: { compact: true },
  sortname: 'id',
  viewrecords: true,
  sortorder: "desc",
  caption:"Navigator Example",
  editurl:"someurl.php",
  height:210
});

jQuery("#navgrid").jqGrid('navGrid','#pagernav',
  {}, //options
  {height:280,reloadAfterSubmit:false}, // edit options
  {height:280,reloadAfterSubmit:false}, // add options
  {reloadAfterSubmit:false}, // del options
  {} // search options
);

position: absolute;是一个约束,因为它是由jQuery UI 布局添加的

是否可以包含特定设置以使 jqGrid 4.9.0 再次与 jQuery ui Layout 兼容?

更新:

预期产出 在此处输入图像描述

4

1 回答 1

1

我在免费的 jqGrid 中做了一些更改。我希望所有描述的问题都得到解决。$.jgrid.jqModal.toTop现在的默认选项与true以前一样,但所有对话框将在关闭后销毁,并且navGrid仅在显示之前直接创建警报对话框(如果未选择任何行,则单击编辑/删除按钮发出警告)。

于 2015-05-25T00:48:15.907 回答