<script type="text/javascript">
$(document).ready(function(){
$("input[name='trim']").click(function (event) {
if ($(this).val() == "deluxe") {
$("input[name='option']").attr("checked", true);
} else if ($(this).val() == "plain") {
$("input[name='option']").attr("checked", false);
}
});
$("input[name='option']").click(function(event){
$("#custom").attr("checked","checked");
});
});
</script>
这是收音机和点击按钮问题。首先我点击豪华按钮,检查按钮工作正常。然后我点击普通按钮它也可以正常工作。然后我重新点击豪华按钮,检查按钮赢了工作。然后我尝试测试自定义按钮。单击普通按钮后,它无法正常工作。有谁知道发生了什么?顺便说一句,平原从一开始就很好。
答案 0 :(得分:0)
你应该使用jQuery prop()而不是attr()。 attr()是越野车。
答案 1 :(得分:0)
使用以下代码,这是一个很棒的jQuery扩展。它将接受1,0,'1','0',true,false和unidentified。要查看我的fiddle,我也会发布您的用法。
(function( $ ) {
$.fn.checked = function(value) {
if(value === true || value === false) {
// Set the value of the checkbox
$(this).each(function(){ this.checked = value; });
} else if(value === undefined || value === 'toggle') {
// Toggle the checkbox
$(this).each(function(){ this.checked = !this.checked; });
} else if(value === 1 || value === '1') {
$(this).each(function(){ this.checked = true; });
} else if(value === 0 || value === '0') {
$(this).each(function(){ this.checked = false; });
}
return this;
};
})( jQuery );
您的用法如下:
$("input[name='trim']").click(function (event) {
if ($(this).val() == "deluxe") {
$("input[name='option']").checked(1);
} else if ($(this).val() == "plain") {
$("input[name='option']").checked(0);
}
});
$("input[name='option']").click(function(event){
$("#custom").checked(1);
});