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

时间:2013-09-05 14:01:56

标签: javascript jquery ajax jtable

这里我试着这样写..

但是这段代码对我不起作用,因为我期待..

我收到了像

这样的警告信息

[{RCID:1}]

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

注意:rcid是选中的父记录ID,rdsid是选中的子reord id

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

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;
}

1 个答案:

答案 0 :(得分:0)

我试图在我的方面做类似的事情。我快要疯了因为找不到答案。我先说,我是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
     });