2012-01-03 9 views

Odpowiedz

77

prostu dodać je w ramach głównego wspornika if jak

if ((Type == 2 && PageCount == 0) || (Type == 2 && PageCount == '')) { 
      PageCount= document.getElementById('<%=hfPageCount.ClientID %>').value; 
} 

Logicznie można to również przepisać w lepszy sposób! To ma dokładnie takie samo znaczenie

if (Type == 2 && (PageCount == 0 || PageCount == '')) { 
+2

Może on misread książkę, czy coś. –

+0

Concur. Również nie ma nawiasu klamrowego otwierającego dla warunkowego. To nie pomogło. – Tass

4
if((Type == 2 && PageCount == 0) || (Type == 2 && PageCount == '')) { 

     PageCount= document.getElementById('<%=hfPageCount.ClientID %>').value; 
} 

To może być jedno z możliwych rozwiązań, tak „lub” jest || nie !!

3

Zawiń je w dodatkową parę parenów i możesz jechać.

if((Type == 2 && PageCount == 0) || (Type == 2 && PageCount == '')) 
    PageCount= document.getElementById('<%=hfPageCount.ClientID %>').value; 
} 
5

cały if powinien być ujęty w nawiasy, a operator or jest || nie !!, więc

if ((Type == 2 && PageCount == 0) || (Type == 2 && PageCount == '')) { ... 
7

Jestem obecnie sprawdzanie dużej liczby warunków, który staje się niewydolny pomocą if metoda wykraczająca poza 4 warunki. Aby udostępnić czysto wyglądającą alternatywę dla przyszłych widzów ... która ładnie się skaluje, używam:

var a = 0; 
var b = 0; 

a += ("condition 1")? 1 : 0; b += 1; 
a += ("condition 2")? 1 : 0; b += 1; 
a += ("condition 3")? 1 : 0; b += 1; 
a += ("condition 4")? 1 : 0; b += 1; 
a += ("condition 5")? 1 : 0; b += 1; 
a += ("condition 6")? 1 : 0; b += 1; 
// etc etc 

if(a == b) { 
    //do stuff 
} 
6

Czasami można znaleźć sztuczki, aby dalej łączyć statystyki.

jak na przykład:

0 + 0 = 0 

i

"" + 0 = 0 

tak

PageCount == 0 
PageCount == '' 

można zapisać następująco:

PageCount+0 == 0 

w JavaScript 0 jest tak samo dobry jak false odwracanie ! okazałoby 0 do true

!PageCount+0 

dla ogólnej sumy:

if (Type == 2 && !PageCount+0) PageCount = elm.value; 
Powiązane problemy