关于单选按钮计数,然后使用jquery更改类

Regarding radiobutton count and then change class using jquery

本文关键字:jquery 然后 单选按钮      更新时间:2023-09-26

这是html的标记

<input type="checkbox" title="enable" value="30"/>
<input type="checkbox" title="enable" value="31"/>
<input type="checkbox" title="disable" value="32"/>
<input type="checkbox" title="disable" value="33"/>
<input type="checkbox" title="disable" value="34"/>
<a class="testdisable" id="testhere">TESTCLASS</a>

现在我想禁用类应用,如果任何一个选中的复选框是禁用的。如果两个启用复选框被选中,那么我想禁用类应用于锚。如果两个禁用复选框被选中,那么我想启用类被应用于锚标记。我尝试下面的jquery代码..但没有得到适当的结果..我得到的问题两个禁用和两个禁用和一个启用

我的JS小提琴:http://jsfiddle.net/TpBGG/1/

可以试试

function changeclass() { if ($('input:checked[title="disable"]').length >= 1 && $('input:checked[title="enable"]').length >= 1) { $('a[name=enable_anchor]').attr('class', 'testdisable'); } else if ($('input:checked[title="enable"]').length >= 1) { $('a[name=enable_anchor]').attr('class', 'testdisable'); } else if ($('input:checked[title="disable"]').length >= 1) { $('a[name=enable_anchor]').attr('class', 'testenable'); } //else { // $('a[name=enable_anchor]').attr('class', 'testdisable'); //} }

这应该能解决你的问题:

    function changeclass() {
alert('before' + $('#testhere').attr('class'));
if ($('input:checked[title="disable"]').length == 1) {
    $('#testhere').attr('class', 'disable');
}
else if (($('input:checked[title="disable"]').length > 1) && ($('input:checked[title="enable"]').length == 1))
{
    $('#testhere').attr('class', 'disable');
}
else if ($('input:checked[title="enable"]').length > 1) {
    $('#testhere').attr('class', 'disable');
}
else {
    $('#testhere').attr('class', 'enable');
}
alert('after' + $('#testhere').attr('class'));}