嗨,我有一张车辆列表
<table>
<tr class="${(i % 2) == 0 ? 'odd' : 'even'}" id ="rows">
<td>
<div class="check_box_div">
<div class="check_box_list">
<g:checkBox id = "isActive_${i}" class="isActive" name="isActive" value="${vehicleInstance?.isActive}" />
<input type="hidden" value="${vehicleInstance?.id}" class="vehicleId" name="vehicleId" id="isActive_${i}_" />
</div>
<div class="display_image" id ="display_image_${i}"></div>
</div>
</td>
</tr>
Run Code Online (Sandbox Code Playgroud)
table有很多行,我想得到div的id,其中每个行的类名是" display_image ",我试图让它像
$(".isActive").click(function() {
var checkBox_id = $(this).attr("id");
var checkbox = $('#'+checkBox_id);
var div_id =$('#'+checkBox_id).closest("div").find(".display_image").attr("id"); // always returns div_id =display_image_0(div id of first row)
Run Code Online (Sandbox Code Playgroud)
这适用于第一行,但对于第二行,它也只返回第一行div的id,我应该做的更改是什么,这样我将获得每行div的id
Aln*_*tak 16
向上直到找到行,然后再向下找到显示图像:
$(".isActive").click(function() {
var div_id = $(this).closest('tr').find('.display_image').attr(id);
// ...
});
Run Code Online (Sandbox Code Playgroud)
请注意,这完全不依赖于原始元素的ID - 只是DOM中元素的布局.
更优化的解决方案是可能的,但是无论每行中的元素.isActive和.display_image元素的相对位置如何,这个解决方案都是可行的.
| 归档时间: |
|
| 查看次数: |
34267 次 |
| 最近记录: |