0

これらのチェックボックスは、以下の機能と組み合わせると、入力の受け入れを停止します。ここに問題を示すフィドルを投稿しました:http://jsfiddle.net/chayacooper/WZpMh/32/

HTML

<ul id="attributes-Colors">
    <li><input type=checkbox name="color[]" value="Blue" data-color="Blue">Blue</li>
    <li><input type=checkbox name="color[]" value="Red" data-color="Red">Red</li>
    <li><input type=checkbox name="color[]" value="Black" data-color="Black">Black</li>
</ul> 

JS

 $(document).ready(function () {
    var selected = [];
    $('#attributes-Colors *').click(function () {
        var attrColor = $(this).data('color');
        var $this = $(this);
        if ($this.parent().hasClass("active")) {
            $this.parent().removeClass("active");
            selected.splice(selected.indexOf(attrColor),1);
        }
        else {
            $this.parent().addClass("active");
            selected.push(attrColor);
        }
        $("#content").find("*").hide();
        $.each(selected, function(index,item) {
            $('#content').find('[data-color ~="' + item + '"]').show();
        });
        return false;
    });
});   
4

1 に答える 1

2

クリックハンドラーでを削除するreturn falseと、チェックボックスが応答します。

于 2013-03-25T22:00:33.810 に答える