Javascript 网格,从一个表中选择标题“Id”,从另一个表中选择内容值,然后按;Id为“的值”;数组内Jquery

Javascript 网格,从一个表中选择标题“Id”,从另一个表中选择内容值,然后按;Id为“的值”;数组内Jquery,javascript,jquery,html,Javascript,Jquery,Html,我有一个网格,由两个表组合而成。一个部分包含标题内容和用户添加的其他值。下面是问题陈述。 我有一个div,其中有一个表。这是网格的标题。 另一个有桌子的部门。包含值行的 演示: <div class="k-grid-header-wrap"> <table role="grid" id="Header" cellspacing="0"> <thead> <tr> <th class="k-header"

我有一个网格,由两个表组合而成。一个部分包含标题内容和用户添加的其他值。下面是问题陈述。
我有一个div,其中有一个表。这是网格的标题。 另一个有桌子的部门。包含值行的

演示:

  <div class="k-grid-header-wrap">

    <table role="grid" id="Header" cellspacing="0">

    <thead>
    <tr>
    <th class="k-header" role="columnheader" data-field="ColumnID_20_17_47" data-title="Q1">Q1</th>
    <th class="k-header" role="columnheader" data-field="ColumnID_20_17_48" data-title="Q2">Q2</th>
    <th class="k-header" role="columnheader" data-field="ColumnID_20_17_10048" data-title="Q3">Q3</th>
    <th class="k-header" role="columnheader" data-field="ColumnID_20_17_10049" data-title="Q4">Q4</th>
    <th class="k-header" role="columnheader" data-field="ColumnID_20_17_10050" data-title="Q5">Q5</th>
    <th class="k-header" role="columnheader" data-field="ColumnID_20_17_10051" data-title="Q7">Q7</th>
    <th class="k-header" role="columnheader" data-field="ColumnID_20_17_10052" data-title="Q8">Q8</th>
    <th class="k-header" role="columnheader" data-field="ColumnID_20_17_10053" data-title="Q9">Q9</th>
    <th class="k-header"></th>
    </tr>
    </thead>
    </table>
    </div>


    <div style="height: 260px;"  class="k-grid-content">

    <table role="grid" id="tbl_1" cellspacing="0">

    <tbody>
    <tr class="" data-uid="a692c39b" role="row">
    <td data-role="editable" class="" role="gridcell">1 </td>
    <td data-role="editable" class="" role="gridcell">2</td>
    <td data-role="editable" class="" role="gridcell">3</td>
    <td data-role="editable" class="" role="gridcell">4</td>
    <td data-role="editable" class="" role="gridcell">5</td>
    <td data-role="editable" class="" role="gridcell">6</td>
    <td data-role="editable" class="" role="gridcell">7</td>
    <td data-role="editable" class="" role="gridcell">eight</td>

    </tr>
    </tbody>
    </table>
    </div>

以下是针对您的问题的解决方案:

function OnSave() {
            var answerArray = [];
            $("#Header th[data-field*='_']").each(function () {

                var Columnid = $(this).attr('data-field');
                var Columntemp = Columnid.split('_');
                var ColumnSection = Columntemp[1];
                var ColumnQGroup = Columntemp[2];
                var ColumnQuestion = Columntemp[3];
                var ColumnRadiostatus = $(this).is(':checked');
                var rowNum = $(this).parent().parent().index();

                var ColumnValue;
                ColumnValue = $('#tbl_1 tr:eq(' + $(this).parent().index() + ') td:eq(' + $(this).index() + ')').text();
                //alert("columnValue : " + ColumnValue);
                if (!(ColumnValue instanceof Array)) {
                    ColumnValue = [ColumnValue];
                }
                answerArray.push(new clientAnswer(ColumnSection, ColumnQGroup, ColumnQuestion, ColumnRadiostatus, ColumnValue, rowNum));
            });

             var serializedAnswers = Sys.Serialization.JavaScriptSerializer.serialize(answerArray);
             PageMethods.UpdateAnswers(serializedAnswers, callBackUpdateAnswers);
        }
请参见此处的演示:


它太大了,无法阅读。请尝试用小提琴提供。为了便于理解您的问题。@Blavesh,代码段updated@BhaveshKachhadiya???/基本上是剑道网格的HTML,Id是从librray文件分配的;这就是为什么看起来如此,你试过我的答案吗?
function OnSave() {
            var answerArray = [];
            $("#Header th[data-field*='_']").each(function () {

                var Columnid = $(this).attr('data-field');
                var Columntemp = Columnid.split('_');
                var ColumnSection = Columntemp[1];
                var ColumnQGroup = Columntemp[2];
                var ColumnQuestion = Columntemp[3];
                var ColumnRadiostatus = $(this).is(':checked');
                var rowNum = $(this).parent().parent().index();

                var ColumnValue;
                ColumnValue = $('#tbl_1 tr:eq(' + $(this).parent().index() + ') td:eq(' + $(this).index() + ')').text();
                //alert("columnValue : " + ColumnValue);
                if (!(ColumnValue instanceof Array)) {
                    ColumnValue = [ColumnValue];
                }
                answerArray.push(new clientAnswer(ColumnSection, ColumnQGroup, ColumnQuestion, ColumnRadiostatus, ColumnValue, rowNum));
            });

             var serializedAnswers = Sys.Serialization.JavaScriptSerializer.serialize(answerArray);
             PageMethods.UpdateAnswers(serializedAnswers, callBackUpdateAnswers);
        }