1

所以,我要做的就是为一系列表字段创建类。

每个类可以多次应用于每个表字段。

在 Javascript 中,我想创建一个与一系列复选框相关的脚本。当每个复选框被选中或取消选中时,相关的类将消失。

例如:

<input type="checkbox" id="checkbox1" name="check" value="Number1" checked> Contents <br>
<input type="checkbox" id="checkbox2" name="check" value="Number2" checked> Contents <br>
<input type="checkbox" id="checkbox3" name="check" value="Number3" checked> Contents <br>
<input type="checkbox" id="checkbox4" name="check" value="Number4" checked> Contents <br>

然后任何具有特定类的表字段都应该通过这个 Javascript 消失:

function topicSorter() {
    $("#Checkbox1").onclick = function () {if ($("#Checkbox1").checked) {$('.class1').show(); } else {$('.class1').hide(); }
        };
    $('.class1').show();   
}

我似乎只能在不使用 jQuery 并且只使用类 via 的情况下让它工作getElementById,而不是使用任何“类”的变体,比如getElementByClassName......

它不工作。

很抱歉用所有这些废话堵塞了这个互联网。

4

2 回答 2

1

将每个复选框中的值更改为数字 1-4。然后尝试以下代码:

    $("input[type='checkbox']").change(function() {
        var value = $(this).attr("value");

        $('.class' + value).toggle(this.checked);
    });

现在,每次单击复选框时都会触发此代码,找到相应的值,并隐藏或显示相关类。

于 2013-03-19T19:50:46.263 回答
1
<input name="filter" type="checkbox" value="class-1" /> Class 1
<input name="filter" type="checkbox" value="class-2" /> Class 2
<input name="filter" type="checkbox" value="class-3" /> Class 3
<input name="filter" type="checkbox" value="class-4" /> Class 4

function SetFilter()
{
    var checked = new Array();
    $("input[type='checkbox'][name='filter']:checked").each(function(){
        checked.push("." + $(this).val());
    });    

    var value = checked.join(",");    
    $("tr").filter(":not(" + value + ")").hide();
    $("tr").filter(value).show();
}

$("input[type='checkbox'][name='filter']").change(SetFilter);

SetFilter();

http://jsfiddle.net/hunter/NxcPL/

于 2013-03-19T19:56:00.560 回答