Sch*_*tte 24 javascript jqgrid
当我使用$('#mygrid').jqGrid('GridUnload');我的网格被销毁:没有寻呼机/没有标头.
在维基中我发现:
与先前方法的唯一区别是网格被破坏,但是表元素和寻呼机(如果有的话)可以再次使用.
我找不到GridUnload/GridDestroy之间的任何区别或者我做错了什么?
我使用jqGrid 3.8.
Ole*_*leg 59
为了能够在页面上创建jqGrid,您必须<table>在要查看网格的页面位置插入一个空元素.表元素的最简单的例子是<table id="mygrid"></table>.
在您调用之前,<table>将不会在页面上看到空元素本身,$('#mygrid').jqGrid({...})并且将创建类似列标题的网格元素.
该方法的GridDestroy工作方式类似于jQuery.remove.它删除属于包含该<table>元素的网格的所有元素.
GridUnload另一方面,该方法删除所有,但空<table>元素保留在页面上.因此,您可以在同一个地方创建新网格.GridUnload如果您需要在一个地方创建不同的网格取决于不同的条件,该方法非常有用.看看老答案与演示.该演示展示了如何在同一个地方动态创建两个不同的网格.如果您只是GridUnload在代码中替换GridDestroy演示将无法工作:在销毁第一个网格后,将不会在同一个地方创建其他网格.
除了Oleg的回答之外,我想指出GridUnload只是从表中删除了网格.它删除了原始HTML表格元素(和寻呼机),并且广告在其位置上是相同的(至少在4.5.4中).
这意味着如果您将一些事件处理程序附加到表HTML元素(即使用jquery,如('#gridID').on('event','selector',handler)),它们也将被删除.如果用新的网格替换旧网格,那么事件将不会在新网格上触发...