2014-04-06 30 views
1

我有一個使用Jquery的Ajax獲取請求,它在服務器端沒有特殊的標題,因此只是返回text/html。Ajax響應包含一個值,但不等於值?

$.get("index.php?action=get_current_page", function (response) { 

當我再去做一個警告:

alert(response); 

值顯示:收件箱

但是,爲什麼那麼這是否就非常下一行的值爲false:

if (response == "inbox") { 

有什麼建議嗎?你需要更多信息嗎?謝謝。

整個片段是:

$.get("index.php?action=get_current_page", function (response) { 
     alert(response); 

     if (response == "inbox") { 
      alert("hello"); 
      loadInbox(); 
     } 

而在服務器端,我simpyl呼應會話變量:

echo $_SESSION['current_page']; 
+0

你將需要顯示整個響應。 –

+0

函數內部的「下一行」?或'$ .get()'之後的下一行? 「response.length」是否等於5(或者末尾是否有空白)? – nnnnnn

+0

沒有引號的收件箱是整個響應,我是否必須使用json,我想我可以在這種情況下使用html – Andrew

回答

2

它極有可能包含空格或其他不可見字符。如果沒有控制服務器端的輸出,那麼你可以使用JavaScript來替換不可見的字符。否則,如果你有控制服務器端輸出。你可以在服務器端做到這一點。

如果您有PHP腳本的服務器端訪問權限,那麼trim()將執行從字符串的開始和結尾處替換空格的工作。

$response = trim($response); 
echo $response; 

如果您只能訪問客戶端,則使用JavaScript。更具體地講,String.prototype.replace()將獲得通過替換字符的每一次出現所做的工作不屬於a-zA-Z

response = response.replace(/[^a-zA-Z]/g,''); 
相關問題