2010-06-10 50 views
0

當我在做一些JQuery和PHP時,
我注意到If-else模式的處理方式不同,並且從一種語言到另一種語言都有所不同
程序是否可以有幾個IF,只有一個Else結構?

說我在一個HTML
有一個簡單的輸入文本字段,我是使用一些如果和別人的檢查
值輸入到文本字段。

Text: <input type="text" name="testing"/> 

jQuery中,我得到了一些代碼如下:

if($("#testing").val()==1){ 
//do something 
} 
if($("#testing").val()=="add"){ 
//do something 
} 
else{ 
//do something 
} 
if($("#testing").val()=="hello"){ 
//do something 
} 

怎麼會jQuery和PHP區別對待else語句?
我的意思是在JQuery中,第三個If語句是
,即使它已經進入Else語句,
,但在Else語句之後,我重複了PHP腳本中的代碼時,它仍然停止。

+4

我很懷疑它正確連鎖多個獨家的。請顯示您的PHP代碼。 – ChaosPandion 2010-06-10 17:24:08

+0

模式不應該被區別對待,它們非常清晰。你能用jQuery和PHP顯示確切的案例,並顯示你使用的是什麼數據? – 2010-06-10 17:25:00

+0

'if'語句以JavaScript和PHP完全相同的方式執行。看起來你的陳述是錯誤/不同寫的。 – BoltClock 2010-06-10 17:28:24

回答

4

jQuery代碼是不應該的,首先,你缺少的,你是在jQuery的檢查你的文本字段中的ID:

<input type="text" name="testing" id="testing" /> 

然後你需要elseif結構和else應該走過去:

if($("#testing").val()==1){ 
//do something 
} 
else if($("#testing").val()=="add"){ 
//do something 
} 
else if($("#testing").val()=="hello"){ 
//do something 
} 
else{ 
//do something 
} 

如果前面的條件都沒有解析爲真,則執行else

+0

我認爲這是OP實際需要的,儘管提供的代碼看起來非常不同。所以+1用於心靈讀書。 – MJB 2010-06-10 17:29:18

2

如果是要被起訴,除非你讓3號:

否則,如果($( 「#測試」)VAL()== 「你好」){

+0

這會留下語法錯誤,因爲在else之後你不能有else else,所以你必須改變它們的順序 – 2010-06-10 17:28:02

0

釋如果

//First If block is executed 
if($("#testing").val()==1){ 
//do something 
} 
//This if will be executed separately from the previous 
if($("#testing").val()=="add"){ 
//do something 
} 
else{ 
//do something 
} 
//This will also execute separately 
if($("#testing").val()=="hello"){ 
//do something 
} 

爲了if語句使用 「否則,如果」

//First If block is executed 
if($("#testing").val()==1){ 
//do something 
} 
//This if will be executed only if the first if is not 
else if($("#testing").val()=="add"){ 
//do something 
} 
//else maintains standard usage as the final option 
else{ 
//do something 
} 
//This will also execute separately 
if($("#testing").val()=="hello"){ 
//do something 
} 
相關問題