我的js语法或结构有什么问题?

时间:2018-09-29 20:09:32

标签: javascript jquery

如果我只有这个js,一切都会正常运行:

$('.hidden-div').hide();

$('#id_bool').change(function() {
   $('.hidden-div').toggle(this.true);
});

但是如果我直接在其下面添加此功能,则一切都会停止工作:

$('.form').on('submit', function(){
   if $('#id_bool'){
     $('.hidden-div').show();
   } else {
     $('.hidden-div').hide();
   }
});

第二部分出了什么问题?

2 个答案:

答案 0 :(得分:1)

您忘记在if语句中添加括号:

$('.form').on('submit', function(){
   if ($('#id_bool')){
     $('.hidden-div').show();
   } else {
     $('.hidden-div').hide();
   }
});

答案 1 :(得分:0)

在JQuery中,选择器将始终返回JQuery数组,您需要指定要检查的属性。 这个:

   if ($('#id_bool')){

应为:

  if ($('#id_bool:checked').length){

修改

如果您的id_bool具有值,则可以为true或false,就像@Bargi所提到的,可以使用以下值:

if ($('#id_bool').val()){