有没有人知道为什么以下条件在javascript中不起作用?
if ($(this).is(':checked') && this.name != 'AllgS') {
$('#'+this.name+'colors').show('slow');
}
else {
$('#'+this.name+'colors').hide('slow');
}
第二个条件不例外,但我没有收到错误消息。 使用
if ($(this).is(':checked') && this.name == 'AllgS') {
$('#'+this.name+'colors').show('slow');
}
else {
$('#'+this.name+'colors').hide('slow');
}
工程...
编辑: 整个功能是
$('.Kennzahl').click(function(){
if ($(this).is(':checked') && this.name != 'AllgS') {$('#'+this.name+'colors').show('slow');} else {$('#'+this.name+'colors').hide('slow');}
if ($(this).is(':checked') && this.name == 'AllgS') {$('#'+this.name+'colors').show('slow');}
else {
if ($('#AllgS').prop('checked') == false && $('#BerufS').prop('checked') == false)
$('#'+this.name+'colors').hide('slow');
else {}
}
});
答案 0 :(得分:0)
tt将this.name ==" xx"因为你所写的不是有效的条件测试
if ($(this).is(':checked') && (this.name == 'AllgS')) {
$('#'+this.name+'colors').show('slow');
}
else {
$('#'+this.name+'colors').hide('slow');
}
答案 1 :(得分:0)
嗯,您的代码经过一些修改后才能运行。检查此 fiddle 。
此外,如果你注意缩进,就会更容易弄清楚错误。没有完整的标记和任何其他想法,我试图从你的问题中的代码重现行为。如果选中相应的复选框,则以下代码会显示div
ID AllgS 。
$('.Kennzahl').click(function(){
$("#a").html($(this).is(":checked")+" : "+this.name);
if ($(this).is(':checked') && this.name != 'AllgS') {
$('#'+this.name+'colors').show('slow');
} else {
$('#'+this.name+'colors').hide('slow');
}
if ($(this).is(':checked') && this.name == 'AllgS') {
$('#'+this.name+'colors').show('slow');
}
else if (!$('#AllgS').prop('checked') && !$('#BerufS').prop('checked')){
$('#'+this.name+'colors').hide('slow');
}
});