2012-09-22 53 views
0

我做了一個簡單的if和else結構。但它不起作用。 我得到錯誤。 EN定義了nog。簡單如果其他結構。用不同的lang屬性

我該如何解決這個問題?

感謝,

var theLanguage = $('html').attr('lang'); 
// Diferent language 
if ($(theLanguage) == "en") { 

} else { 

} 
+2

此代碼不起作用,但不會拋出該錯誤。你確定錯誤在這嗎? – pimvdb

+0

這是錯誤。 ReferenceError:en未定義 –

+0

這裏沒有'en'變量,這就是我想知道的原因。 – pimvdb

回答

1
var theLanguage = $('html').attr("lang"); 

theLanguage變量是一個字符串字面值。

$(theLanguage)不是一個jQuery對象,這就是爲什麼它會拋出錯誤。

,您可以檢查作爲

if(theLanguage == ""en){ 
} 

這就是全部。

0

theLanguage是,你可能要比較"en"所以你不這樣做$(theLanguage)lang屬性的字符串值,你就比較theLanguage直接像這樣:

var theLanguage = $('html').attr('lang'); 
// Diferent language 
if (theLanguage == "en") { 

} else { 

} 
0

.attr()功能已經返回一個字符串。不要把它包在另一個$()而是直接comrae值:

var theLanguage = $('html').attr('lang'); 
// Diferent language 
if (theLanguage == "en") { 

} else { 

} 
1

你傳入存儲在theLanguage對jQuery函數的值。爲什麼?這將返回一個jQuery對象,所以它永遠不會== "en"

如果你想看看"en"是否值,你會做一個直接的比較。

if (theLanguage == "en") { 

如果你得到一個的ReferenceError:恩沒有定義,那麼你的en缺少引號"en"