在这个 jquery 脚本中有点卡住了。我想在检查时获取 tr
中最后一个 td
的 link
属性复选框。
这是 HTML
<tr>
<td><input type="checkbox" name="check" value="happy"></td>
<td style="width: 310px; line-height: 14px;" class="fileName <?php echo $myClass; ?>" ><div style="width: 310px; overflow: hidden;"><a href="https://abcd.com/<?php echo $info."/".$myinfo['name'];?>" title="<?php echo $myinfo['name'];?>" target="_blank"><?php echo $fileName.'.'.$fileExtension; ?></a></div></td>
<td style="width: 150px;"><?php echo $fileSize; ?> KB</td>
<td style="width: 150px;"><?php echo $fileModified; ?></td>
<td style="width: 150px;">
<a href="javascript:void(0);" ><span id="" link="https://abcd.com/<?php echo $info."/".$myinfo['name'];?>" title="<?php echo $myinfo['name'];?>" class="shareIcon"></span></a>
<a href="javascript:void(0);"><span id="deleteIcon" link="<?php echo $myBucket['name'];?>" class="deleteIcon"></span></a>
</td>
</tr>
当有多个复选框时,我想获取最后一个 td 中的每个链接属性。
我尝试的是这个
$("input[name='check']").on('change',function() {
var checked = $("input[name='check']:checked");
// console.log(checked);
$.each(checked,function(){
//console.log(checked.length);
if(checked.length>1){
// console.log('more than 1');
//console.log(checked.parents('td').siblings('.shareIcon'));
checked.parents('td').siblings('.shareIcon'),function(){
console.log($(this).attr('link'));
}
}
})
});
最佳答案
尝试这个脚本:
$("input[name='check']").on('change', function () {
var checked = $("input[name='check']:checked");
$.each(checked, function () {
if (checked.length >= 1) {
$.each(checked.parent().siblings().last().children().children(), function() {
console.log($(this).data("link"));
});
}
})
});
这个 HTML:
<table>
<tr>
<td>
<input type="checkbox" name="check" value="happy">
</td>
<td style="width: 310px; line-height: 14px;" class="fileName <?php echo $myClass; ?>">
<div style="width: 310px; overflow: hidden;"><a href="https://abcd.com/areeb" title="areeb" target="_blank">some_file.php</a>
</div>
</td>
<td style="width: 150px;">212KB</td>
<td style="width: 150px;">some_file.php</td>
<td style="width: 150px;"> <a href="javascript:void(0);"><span id="" data-link="https://abcd.com/areeb" title="<?php echo $myinfo['name'];?>" class="shareIcon"></span></a>
<a href="javascript:void(0);"><span id="deleteIcon" data-link="<?php echo $myBucket['name'];?>" class="deleteIcon"></span></a>
</td>
</tr>
</table>
<小时/>
代码说明:
<小时/>JavaScript 代码:
我刚刚稍微改变了 if 条件,以便它也可以匹配一个元素。然后$.each()
函数也做了一点改动。我首先定位复选框的父级 td
,然后获取它的所有同级,然后选择最后一个同级,然后弹出它的子级,即 a
或 anchor 标记,然后我弹出这些 a
的子级,即 span
,然后对于每个范围,我记录它的 data-link
属性。
HTML 代码:
我刚刚将 link
属性的名称更改为 data-link
属性,以便通过 data
函数更轻松地访问。
关于javascript - 使用jquery从表的最后一个tr获取属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20717238/