如何在 jtable 中获取主表和子表的选定行

how to get selected rows of master table and child table in jtable

本文关键字:jtable 获取      更新时间:2023-09-26

在这里我试图这样写。

但是这段代码并没有像我期望的那样对我有用。

我收到类似这样的警报消息

[{rcid:1}]

但我想要这样的警报消息..[{rcid:1, rdsid:10}]

注意:rcid 被选中父记录 ID,rdsid 被选择子 reordid

任何想法将不胜感激..提前感谢..

function CheckForm() {
    var $selectedRows = $('#PersonTableContainer').jtable('selectedRows');
    // var $selectedChildRows = $('.jtable-child-table-container').jtable('selectedRows');
    var myjson = [];
    $selectedRows.each(function () {
        var record = $(this).data('record');
        myjson.push({
            rcid: record.rcid,
            rdsid: record.rdsid
        });
    });
    $('jsondata').val(JSON.stringify(myjson)); // this will encode in a json string
    alert(JSON.stringify(myjson));
    return false;
}

我试图做类似的事情。 我快要疯了,因为我找不到答案。 我首先要说,我是jQuery的新手,所以可能有更好的方法,但我找不到它。

var $selectedRows = $('#PersonTableContainer').jtable('selectedRows');

返回其上方所有表中所选行的列表。 就我而言,我有 3 个子表深。 所以我的$selectedRows长度为 3。 我怀疑你的长度为 2。

对于您的情况,我建议:

    var $rcid = 0;
    var $rdsid = 0;
    var $index = 0;
    $selectedRows.each(function () {
        var record = $(this).data('record');
        if(index == 0){
          rdsid = record.rcid;
        }
        if(index == 1){
          rdsid = record.rdsid;
        }

        index++;
    });
    myjson.push({
      rcid: $rcid,
      rdsid:$rdsid
     });