我创建了一个表并为每一行添加了一个复选框,我想在用户勾选复选框时捕获'PUID'值和'ID'值。
这是我得到的结果:
Prod1
AppName1
a0L2000000Rpc1UEAR
但是我想得到这样的东西:
inputText,a0L2000000Rpc1UEAR
JSFiddle :https://jsfiddle.net/gczr3yxd/1/
JS:
j.each(j("input[name='case[]']:checked").closest("td").siblings("td"), function(index, value) {
if (index % 4 == 0) { //break line just before a new row
//values.push('\n');
counter++;
}
values.push(j(this).text());
});
values.join('\n');
values = values.toString();
values = values.replace(/,/g, '\n');
console.log(values);
答案 0 :(得分:1)
您可以尝试以下代码:https://jsfiddle.net/gczr3yxd/4/
function getTableRowData(ele) {
var j = jQuery.noConflict();
values = new Array();
counter = 0;
var vv = new Array();
j.each(j("input[name='case[]']:checked").closest("td").siblings("td"), function(index, value) {
if (index % 4 == 0) { //break line just before a new row
//values.push('\n');
counter++;
}
++index;
var tdhtml = j(this).html();
if (tdhtml.indexOf('input') != -1) {
values.push(j(this).find('input').val());
} else if (index % 4 == 0) {
values.push(j(this).text());
}
if (index % 4 == 0 && index > 0) {
vv.push(values.join(','));
values = new Array();
}
});
var data2 = vv.join('\n');
console.log(data2);
}
首先,增加索引,以便在应用modulo(%)时获得适当的值。根据条件,值将添加到数组中,并在每第四个循环处以逗号连接并添加到数组中,最后连接到最终数组。