gpt4 book ai didi

jquery - 编写一个新的 jQuery 插件

转载 作者:行者123 更新时间:2023-12-01 00:59:11 24 4
gpt4 key购买 nike

<table class="data" border="1">
<tbody>
<tr>
</tr>
<td><input type="checkbox" /></td>

<tr>
<td><input type="checkbox" /></td>

</tr>
<tr>
<td><input type="checkbox" /></td>
</tr>
</tbody>
</table>

遍历每个 tr 时元素,检查是否给定 <tr>元素有一个选中的复选框,如果是,则添加新类。如果没有,请将其删除。

jQuery.fn.deleteMark = function() {

this.each(function() {
alert( $('input:checkbox',this) );
if ($('checkbox',this).is(':checked')){
$(this).addClass("delemarked");
}
else{
$(this).removeClass("delemarked");
}
})
};

现在我想为每个 tr 添加一个类已检查:

function refresh(){
$('.data tbody tr').each(function() {
$(this).deleteMark();
});
}

遗憾的是这对我不起作用。我将不胜感激任何帮助。

最佳答案

而不是 checkbox ,您需要:checkbox对于选择器,因为没有 <checkbox>元素,像这样:

$(':checkbox',this)

尽管您可以使用.toggleClass("className", bool)来缩短您的整体方法,像这样:

jQuery.fn.deleteMark = function() {
return this.each(function() {
$(this).toggleClass("delemarked", $(this).find(":checkbox:checked").length > 0);
});
};

此外,不需要 .each() 调用你的插件,这样就可以了:

$('.data tbody tr').deleteMark();

You can test all of the change above here .

关于jquery - 编写一个新的 jQuery 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3855039/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com