【问题标题】:jqGrid inline editing and data saved to clientArray, why getGridParam('data') not updated?jqGrid内联编辑和数据保存到clientArray,为什么getGridParam('data')没有更新?
【发布时间】:2012-07-09 08:56:12
【问题描述】:

我只是 jqGrid 的新手,使用 jqGrid 创建一些客户端页面来呈现和编辑数据(数据类型:'local')。我使用内联编辑模式和 cellsubmit:'clientArray'。我可以编辑字段并单击进入退出编辑模式。

我想通过以下方式检索 UI 网格上的数据:

var obj = $("#myGrid").jqGrid('getGridParam','data');

不幸的是,变量(一个数组)没有随着我的更改而更新。

然而,根据here 的信息,如果我调用 getRowData(rowId),我可以成功获取更新的数据。这是一个错误吗?还是我应该调用其他方法来提交数据,以便我可以通过第一行代码检索它?

这是带有代码的jsfiddle

【问题讨论】:

    标签: jqgrid inline-editing


    【解决方案1】:

    在您的 JSFiddle 代码中,为什么要使用

    var selRow = $("#grid").jqGrid('getGridParam', 'selrow');

    jqgrid methods

    如果需要获取选中行的ID,使用

    $('#grid1').jqGrid('getGridParam', 'selrow') ; // only..declare selRow as 1 on your code after lastSel..like

    var lastSel = -1;
    

    var mydata = [];

    var selRow=1;

    并像您使用的那样获取行数据,

    var rowData = $("#grid1").jqGrid('getRowData', rowid); //这里的rowid:是数据源上设置的id值,不是行的索引。这将返回一个具有列名和值的对象,例如:{name="teddy", address="here and there", age=34} 并使用

    获取值

    var myName = rowData.name;

    object 将只有 colModel 上配置的列。可能出现在数据源上的所有内容都不会出现在此处。 [有关此的更多信息 - 如果您想在此处拥有不想在网格上显示的值,则必须将该列添加到 colModel 集合并将其设置为 hidden:true ]

    希望对你有帮助..

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-03
      • 2016-08-29
      • 1970-01-01
      • 2014-12-30
      • 1970-01-01
      相关资源
      最近更新 更多