我想连接表行单元格值,然后将连接的值格式化为格式说
Lamivudine 98% (RSD = 1.3% ; n= 6)
如果单击下一行中的下一个复选框,则新值应为
Lamivudine 98% (RSD = 1.3% ; n= 6) : Zidovudine 95% (RSD = 1.9% ; n= 9)
依旧等等......
这是表格行
<tr class="assay_row">
<td>Lamivudine</td>
<td>98%</td>
<td>1.3%</td>
<td>6</td>
<td><input type="checkbox" name="case[]" class="case" /></td>
</tr>
<tr class="assay_row">
<td>Zidovudine</td>
<td>95%</td>
<td>1.9%</td>
<td>6</td>
<td><input type="checkbox" name="case[]" class="case" /></td>
</tr>
<tr class="assay_row">
<td>Zidovudine</td>
<td>1.5922307662924</td>
<td>1.3636240087592</td>
<td>9</td>
<td><input type="checkbox" name="case[]" class="case" /></td>
</tr>
我的js到目前为止
$(document).ready(function() {
$("input.case").click(myfunc);
});
function myfunc(ele) {
var values = new Array();
$.each($("input[name='case[]']:checked").closest("td").siblings("td"),
function () {
values.push($(this).text());
});
alert("val---" + values.join (", "));
}
建议
答案 0 :(得分:1)
您应该遍历所有tr
元素,而不是td
元素。在每一行中,您需要将td
内容连接成您想要的格式。
function myfunc(ele) {
var values = []
$("input[name='case[]']:checked").closest("tr").each(function () {
var tds = $(this).children();
values.push(tds.eq(0).text() + " " + tds.eq(1).text() + " (RSD = " + tds.eq(2).text() + " ; n = " + tds.eq(3).text() + ")");
});
alert("val---" + values.join (" : "));
}