2017-05-23 3 views
0

&&||演算子をjQueryのif/else文で組み合わせる際に問題があります。ここに例がありますif/else文を使用したJS(jQuery)での結合および/または演算子

if(($x == 'on') && ($y !== 'on' || $z !== 'on')){ 

// it does not seem to work 

} 

しかし、私はそれらのうちの1つだけを置くと動作します。例

if($x == 'on' && $y !== 'on'){ 

// it works but I want to combine more like the above 
} 
+1

正確にはどのような要件ですか?基本的に時間を費やすことをお勧めします – Satpal

+0

最初のものです。ある変数が真であり、変数のセットのどちらかが真でないかどうかを確認する必要があります。例えば。 $ xは真でなければならず、$ yまたは$ zまたは$ anyThingのいずれかが真ではない – Ayanize

+0

'if(($ x === 'on')&&!($ y === 'on' || $ z === 'on')){'これは正しくないかもしれないが、これは私がそれをやる方法の線に沿っている。 は詳細に関係なく詳細を必要とします。 –

答えて

0

要件に基づいて、「$ xは真でなければならず、$ yまたは$ zまたは$ anyThingは真ではありません」というコメントに基づいています。追加のコード行を追加する必要があります。

以下のコードを参照してテストしてください。

<!DOCTYPE html> 
<html lang="en"> 
<head> 
<meta charset="UTF-8"> 
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script> 
<script type="text/javascript"> 
    $(document).ready(function(){  
     $('#testBtn').on('click', function(){   
      var xInput = $('#xInput').val(), 
      yInput = $('#yInput').val(), 
      zInput = $('#zInput').val(); 

      if(xInput == 'true' && (yInput == 'false' && zInput == 'false')){    
       $('#result').text("X it 'true'; Y & Z are 'false'"); 
      } else if(yInput == 'true' && (zInput == 'false' && xInput == 'false')){     
       $('#result').text("Y it 'true'; X & Z are 'false'"); 
      } else if(zInput == 'true' && (yInput == 'false' && xInput == 'false')){     
       $('#result').text("Z it 'true'; X & Y are 'false'"); 
      } else { 
       $('#result').text("Try Again..."); 
      } 
     }); 
    }); 
</script> 
</head> 
<body> 
     X: <input type="text" id="xInput"> &nbsp 
     Y: <input type="text" id="yInput"> &nbsp 
     Z: <input type="text" id="zInput"> &nbsp 
     <br/> 
     <br/> 
     <button id="testBtn">Test If Condition</button> 
     <br/> 
     <br/> 
     Result: <span id="result"></span> 
</body> 
</html> 
関連する問題