2011-06-07 17 views
1

我有這樣的:檢查從PHP文件返回的數據與等號和get()方法的jQuery

$(document).ready(function() { 

$.get('getturn.php', function(data){ 
    if (data!=='4') { alert (' change'); } 
    if (data=='4') { alert ('no change');} 
    }); 
}); 

getturn.php回聲4,如果又是等於會話ID和它相呼應的匝數否則。 getturn.php按照它應該做的那樣回聲4或者像0,1,2,3這樣的數字;然而,當我從另一個文件中得到上述數據並檢查它是否等於4時,我無法得到正確答案......我在做什麼錯了?我認爲我們可以檢查輸出是否與數據=='是'?但是我們無法用數據檢查數字=='4'?

+0

please pas你的PHP代碼也在這裏嗎?還會發生什麼,如果你做'console.log(數據);'? – 2011-06-07 13:36:20

+0

你是否通過螢火蟲檢查了迴應。可能是你的ajax請求被緩存了。 – DanielB 2011-06-07 13:37:18

+0

@GaryGreen數據類型是一個字符串,但當我讓它'data ='4''和'data!='4''時,它會提醒'change'和'no change' – Logan 2011-06-07 13:40:58

回答

2

您是否已經完成alert(data);以查看返回的內容?

我想你應該嘗試此略作修改:

if (data == '4') { alert ('no change');} 
      else { alert (' change'); } 

基於這樣的回答:How do the PHP equality (== double equals) and identity (=== triple equals) comparison operators differ?

+0

+1好回答:) – 2011-06-07 13:39:48

+0

@Frosco嗯... somereason本地主機/ getturn.php回聲'4',但是當我警覺它提醒'1'。儘管如此,類型仍然是一個字符串.. – Logan 2011-06-07 13:44:23

+0

@logan您的迴應的第一部分取消了第二部分。你怎麼確定它迴應了4?除非你使用瀏覽器開發工具並檢查真實的響應,你怎麼知道? – Fosco 2011-06-07 13:46:31

1

如果正確理解您的問題,這將有助於:

data = parseInt(data); 
if (!isNaN(data)) { 
    if (data != 4) { ... } 
    if (data == 4) { ... } 
} 

只是轉換「數據「變量爲數值(例如在這種情況下爲整數)