2012-09-11 28 views
1

大家好我想要运行多个JavaScript并使用AND语句。当用户点击具有值=“1986”的选项并点击其他值为“3”的选项时,将出现一些文本。我在if语句中使用了AND语句,但它不起作用。这里是我的代码:如何在javascript中使用AND语句?

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script></script> 
    <script type="text/javascript"> 
$(document).ready(function() { 

    $('#main').on('change', '.select-box', function() { 

     if ($(".select-box option[value='3']").attr('selected') & $(".select-box option[value='1986']").attr('selected')) { 

      $('#demo').html("Hello World"); 

     } 



    }); 

}); 
    </script> 
<script type="text/javascript"> 

var x="",i; 
for(i=1986;i<2013;i++) 
{ 
x=x + "<option value='"+i+"'> " + i + "</option>"; 
} 
$(document).ready(function() { 
document.getElementById("demo2").innerHTML="<select class='select-box'>"+x+"</select>"; 
}); 
</script> 


</head> 
<body> 
    <p id="demo2"></p> 
    <div id="main"> 
<select class="select-box"> 
     <option value="0">alert</option> 
     <option value="1">alert to</option> 
     <option value="2">no alert</option> 
     <option value="3">best alert</option> 
    </select> 
<p><br/> 
    <div id="demo"></div> 

    </div> 


    </body> 

回答

2

要使用AND语句,它应该是&&

因此,对于你的if语句应该是

if ($(".select-box option[value='3']").attr('selected') && $(".select-box option[value='1986']").attr('selected')) { 
      $('#demo').html("Hello World"); 
} 

Here是布尔逻辑的详细信息。

+0

Opps小错误谢谢你:) – Teodoris

7

您需要使用&&

if ($(".select-box option[value='3']").attr('selected') && $(".select-box option[value='1986']").attr('selected')) 
________________________________________________________^ 

逻辑运算符:

&& = and 
|| = or 
! = not 

,你必须改变从第一select选择类,否则你不会得到他们都。

+0

当您使用jQuery> = 1.7时,您应该在检查运行时属性而不是HTML属性时使用.prop()而不是.attr() – devnull69

+0

谢谢您的有用信息@ devnull69 – Teodoris

+0

它令人沮丧:)) –

0

第二个(外部)圆括号似乎也很重要。

相关问题