Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Boostrap glyphicon复选框,jquery to复选框_Javascript_Jquery_Css_Checkbox_Twitter Bootstrap 3 - Fatal编程技术网

Javascript Boostrap glyphicon复选框,jquery to复选框

Javascript Boostrap glyphicon复选框,jquery to复选框,javascript,jquery,css,checkbox,twitter-bootstrap-3,Javascript,Jquery,Css,Checkbox,Twitter Bootstrap 3,提前谢谢。使用css、boostrap和javascript,我很快就能得到一个标签来选中复选框。问题是,当第一次单击时,jquery可以工作,但是css不能。只有在第一次之后它才能工作 html jquery //if checkbox becomes checked $('label span').on('click', function() { check = $(this).parent().find('input:checkbox'); //is checked true

提前谢谢。使用css、boostrap和javascript,我很快就能得到一个标签来选中复选框。问题是,当第一次单击时,jquery可以工作,但是css不能。只有在第一次之后它才能工作

html

jquery

//if checkbox becomes checked
  $('label span').on('click', function() {
    check = $(this).parent().find('input:checkbox');
//is checked true = uncheck, false = check
   (check.prop('checked') ? check.attr('checked', false) : check.attr('checked', true));
  });

第一次单击标签时,复选框的值设置为false,因此根据三元运算符,它不会显示更改

您需要这样做才能看到更改

 $(document).ready(function () {
   $('input[type="checkbox"]').on('change', function() {
   ($(this).is(":checked") ? $(this).attr('checked', true) :     $(this).attr('checked', false));
   });
});

在这里,您可以第一次看到效果

,当您单击标签时,复选框的值设置为false,因此根据您的三元运算符,它不会显示更改

您需要这样做才能看到更改

 $(document).ready(function () {
   $('input[type="checkbox"]').on('change', function() {
   ($(this).is(":checked") ? $(this).attr('checked', true) :     $(this).attr('checked', false));
   });
});

在这里您可以看到效果

您可以使用此javascript

    $('label span').on('click', function() {

    check = $(this).prev().find('input:checkbox');
//is checked true = uncheck, false = check
    (check.prop('checked') ? check.attr('checked', false) : check.attr('checked', true));
  });

您可以使用这个javascript

    $('label span').on('click', function() {

    check = $(this).prev().find('input:checkbox');
//is checked true = uncheck, false = check
    (check.prop('checked') ? check.attr('checked', false) : check.attr('checked', true));
  });

感谢您修复了第一次单击的更改,但是如果您检查复选框以查看“已选中”的更改,它仍然只会在第二次操作时发生。感谢您修复了第一次单击的更改,但是如果您检查复选框以查看“已选中”的更改,它仍然只会在第二次操作时发生。这修复了第一次单击的更改,但只有在您检查元素时执行多个操作时,才会将“选中”添加到复选框中。这修复了第一次单击更改,但只有在您检查元素时执行多个操作时,才会将“选中”添加到复选框中。