目前我从行中获取所有输出。是否可以仅获取所选“点数”的值。我怎么能这样做?
检查时的预期输出: SF01 SF02 SF03
选中时的当前输出: SF01 11.5 3.5328 120.3359
<table border="1" width="100%" id="selectTable" name="selectTable">
<legend>Display Data Points</legend>
<tr>
<th></th>
<th width="40%">Point</th>
<th width="20%">Depth</th>
<th width="20%">Lat</th>
<th width="20%">Long</th>
</tr>
<tr>
<td>
<input type="checkbox" class="checkBox" name="checkBox[]" />
</td>
<td>SF01</td>
<td>11.5</td>
<td>3.5328</td>
<td>120.3359</td>
</tr>
<tr>
<td>
<input type="checkbox" class="checkBox" name="checkBox[]" />
</td>
<td>SF02</td>
<td>41.5</td>
<td>6.5328</td>
<td>113.3359</td>
</tr>
<tr>
<td>
<input type="checkbox" class="checkBox" name="checkBox[]" />
</td>
<td>SF03</td>
<td>82.1</td>
<td>5.2828</td>
<td>721.9059</td>
</tr>
</table>
<script type="text/javascript">
function clickedBox() {
var values = new Array();
$.each($("input[name='checkBox[]']:checked").closest("td").siblings("td"), function() {
values.push($(this).text());
});
document.getElementById("boxArea").value = "=====Results=====\n" + values.join("\n");
}
$(document).ready(function() {
$("#selectPoint").click(clickedBox);
});
</script>
答案 0 :(得分:1)
将 siblings('td')
更改为 next('td')
,我希望您需要将绑定到
event
。
checkbox
<强> DEMO 强>
当您说
siblings
时,它会获取所有$.each($("input[name='checkBox[]']:checked").closest("td").next("td"), function () { //^^^^here values.push($(this).text()); });
的第一个siblings
,这就是你获得所有价值的原因。
答案 1 :(得分:0)
为了让它更简单 -
在元素上使用data
属性设置您的值。
<input type="checkbox" data-value="SF02"/>
<强>的jQuery - 强>
$(function(){
values= new Array();
$.each($('input[type="checkbox"]:checked'),function(index,item){
values.push(item.data('value');
});
});