2012-08-06 16 views
0

你好,我有以下代碼:

$.getJSON('requestOnServer', { 
    param1: value1, 
    param2: 'value2' 
}, function(result) { 
    alert(result.attr.attr); 
    if (result.attr.attr == "some String") { 

     // do something 
    } else { 
     // do something else 
    } 
});​ 

的問題是,當我提醒返回的字符串它正確顯示。 但是,當與==運算符比較時,即使兩個字符串相同,它在第一個if語句中也不會返回true。

那麼如何正確比較返回的數據與字符串?

+1

在您的代碼中,如果您收到警報,則if中的條件返回true。 – Diego 2012-08-06 18:48:07

+0

嘗試console.logging'result.attr.attr',它可能在它之前或之後有一個空格。 – 2012-08-06 18:48:19

+2

我很困惑,你在if語句中有警示,它會觸發,所以它怎麼會不能返回'true'? – Ohgodwhy 2012-08-06 18:48:34

回答

0

首先您需要確定type.of.attr.attr, 以防這是一個字符串(或任何其他類型)使用console.log()或使用alert()並在其中添加一些字符它的開始和結束就像alert(「======」+ result.attr.attr +「======」);這是批准您在@Kevin B編寫之前和之後沒有空間的簡單方法。