답변:
문서를 살펴보면 $.uniform.update
"균일 한"요소를 새로 고치는 기능이 있습니다.
예 : http://jsfiddle.net/r87NH/4/
$("input:checkbox").uniform();
$("body").on("click", "#check1", function () {
var two = $("#check2").attr("checked", this.checked);
$.uniform.update(two);
});
1.4.4
하지만 js 및 css 파일에 대한 링크가 손상되었습니다. 여기에 업데이트 된 바이올린이 있습니다. 에 특별히 문제가 있음을 의미하는 경우 1.6
jQuery가 변경 된 다음의 동작을 되 돌린 이후에 해당 .attr()
됩니다. 이상을 사용하면 1.6
실제로를 사용해야합니다 .prop()
.
더 간단한 해결책은 유니폼을 사용하는 대신 이것을 수행하는 것입니다.
$('#check1').prop('checked', true); // will check the checkbox with id check1
$('#check1').prop('checked', false); // will uncheck the checkbox with id check1
이렇게하면 정의 된 클릭 동작이 트리거되지 않습니다.
다음을 사용할 수도 있습니다.
$('#check1').click(); //
확인란의 체크 / 체크를 토글하지만 정의한 클릭 동작도 트리거합니다. 그러니 조심해.
편집 : jQuery 1.6 이상은 확인란의 값을 선택 prop()
하지 않습니다.attr()
$("#chkBox").attr('checked', false);
이것은 나를 위해 일했으며 확인란의 선택을 취소합니다. 같은 방식으로
$("#chkBox").attr('checked', true);
확인란을 선택하십시오.
균일 한 1.5 를 사용하는 경우이 간단한 트릭을 사용 하여 확인 속성을 추가 또는 제거
하십시오. 확인란의 입력 필드에 value = "check"를 추가하십시오.
이 코드를 추가 uniform.js
> function doCheckbox(elem){
>.click(function(){
if ( $(elem+':checked').val() == 'check' ) {
$(elem).attr('checked','checked');
}
else {
$(elem).removeAttr('checked');
}
입력 상자에 value = "check"를 추가하지 않으려면 경우에 따라 두 개의 확인란을 추가하기 때문에 이것을 사용하십시오.
if ($(elem).is(':checked')) {
$(elem).attr('checked','checked');
}
else
{
$(elem).removeAttr('checked');
}
당신이 사용하는 경우 균일 2.0을 다음 추가 또는 검사의 속성을 제거하는 간단한 트릭을 사용하는
이의 classUpdateChecked($tag, $el, options) {
기능 변화
if ($el.prop) {
// jQuery 1.6+
$el.prop(c, isChecked);
}
에
if ($el.prop) {
// jQuery 1.6+
$el.prop(c, isChecked);
if (isChecked) {
$el.attr(c, c);
} else {
$el.removeAttr(c);
}
}
$('#check1').prop('checked', true).uniform();
$('#check1').prop('checked', false).uniform();
이것은 나를 위해 일했습니다.
우선 checked
, 값 checked
또는 빈 문자열을 가질 수 있습니다 .
$("input:checkbox").uniform();
$('#check1').live('click', function() {
$('#check2').attr('checked', 'checked').uniform();
});
checked
.
HTMLInputElement
. checked
속성을 살펴보십시오 .
$("#checkall").change(function () {
var checked = $(this).is(':checked');
if (checked) {
$(".custom-checkbox").each(function () {
$(this).prop("checked", true).uniform();
});
} else {
$(".custom-checkbox").each(function () {
$(this).prop("checked", false).uniform();
});
}
});
// Changing state of CheckAll custom-checkbox
$(".custom-checkbox").click(function () {
if ($(".custom-checkbox").length == $(".custom-checkbox:checked").length) {
$("#chk-all").prop("checked", true).uniform();
} else {
$("#chk-all").removeAttr("checked").uniform();
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" id='checkall' /> Select All<br/>
<input type="checkbox" class='custom-checkbox' name="languages" value="PHP"> PHP<br/>
<input type="checkbox" class='custom-checkbox' name="languages" value="AngularJS"> AngularJS<br/>
<input type="checkbox" class='custom-checkbox' name="languages" value="Python"> Python<br/>
<input type="checkbox" class='custom-checkbox' name="languages" value="Java"> Java<br/>