2011-09-29 247 views
0

使用邏輯運算符&&產生無法預測的結果。如果鏈接多於2個表達式,則if子句將失敗。可以使用&&連接的表達式數量有限制嗎?邏輯&&運算符

  if (tTellerProN.checked && tCareProN.checked && tSalesProN.checked) { 
       $(flListEmpty).empty(); 
       $(flListEmpty).append($('<option></option>').val(0).html("Select Role")); 
       $('.fl_list1 .list4').each(function (index) { 
        $(flListEmpty).append($('<option> </option>').val(index).html($(this).text())); 
       }) 
      } 
+0

重新標記,因爲''&&屬於JavaScript的,而不是jQuery的 – bfavaretto

+0

你所說的「失敗」的意思是?你的意思是評估爲假? –

+0

使用大括號:'('和')'來分組&&操作。 – c69

回答

2

不,沒有限制。你的表達要求所有三個checked的值是true,否則它將返回false。其中一個必須是false(或不是true),這就是爲什麼你的if失敗。

備案:&&是javascript語言的一部分,而不是jQuery庫。

2

不,沒有限制。但是看着你的代碼(它只有很少的代碼,並且使用了這樣的描述性變量名),我猜測你實際上的意思是||,而不是&&

4

&&不是jQuery運算符,它是Javascript。 jQuery是一個基於Javascript的庫。

我不知道什麼**是在你的IF statment但此代碼的工作:

var x = true; 
var y = true; 
var z = true; 

alert(x && y && z); // true 
alert(x && y && !z); // false 

我想提醒你的3個.checked參數的值,並確保您預期的那樣,他們正在建立。