jQuery removeClass()有时可以工作,但有时它不会

时间:2018-05-01 00:52:46

标签: jquery

我试图更多地了解jQuery。我正在努力清理课程“活跃”。从一个复选框。按钮组中有两个复选框。请参阅以下代码:

<!--    MAIN BODY       -->
<div id="container">
    <div id="row">
        <div class="col-md-1">
            <div id="" class="btn-group" role="group" >
                <div class="btn-group" data-toggle="buttons">
                    <label class="btn btn-primary active" id = "clear" >
                    <input type="checkbox" id="cbclear" name="tool_option_myCanvas" data-tool="clear" data-toggle="tooltip" data-placement="bottom" title="title"> 
                    <span class="fa fa-undo"></span>
                    </label>
                    <label class="btn btn-primary" id = "btn2" >
                    <input type="checkbox" name="tool_option_myCanvas" data-tool="fg" data-toggle="tooltip" data-placement="bottom" title="title"> 
                    <span class="fa fa-eraser"></span>
                </label></div>
            </div>
        </div>
    </div>
</div>
<script>

(function($) {

    $("#btn2").click(function() {
        $("#clear").removeClass("active");
    });
    $('#clear').click(function() {
        $("#clear").removeClass("active");
}); 
})(jQuery);

如果我点击btn2,它会删除该课程,&#39;有效&#39;,并按预期工作。如果我点击清除,则没有任何反应。

我尝试的另一件事是,当我更换我的点击处理程序以清除&#39;有了这个:

    $('#clear').click(function() {
        $("#clear").removeClass("btn-primary active");
}); 

班级,&#39; btn-primary active&#39;已移除。那么,当我点击“清除”时,为什么我不能删除活动类?按钮?我的最终目标是让活跃的&#39;当我点击“活跃”字样时删除了课程。按钮。

1 个答案:

答案 0 :(得分:0)

我用过这个:Twitter Bootstrap: Remove/Toggle the active state of checkbox-like button group

function download(filename, text) {
  var element = document.createElement('a');
  element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text));
  element.setAttribute('download', filename);

  element.style.display = 'none';
  document.body.appendChild(element);

  element.click();

  document.body.removeChild(element);
}

// Start file download.
download("hello.json","File content");