2015-04-01 47 views
1

我想實現下面的代碼片段到我的項目:http://jsfiddle.net/Zmf6t/。但我遇到了一些困難;我在jQuery(document).ready()回調函數中封裝了JavaScript,並在Chrome調試器中檢查它顯示腳本正在運行。但是,當我到達if(jQuery(this).val() == "-1")(因爲我的<select>值的值爲-1作爲其值),調試程序報告value屬性的屬性爲"-1",但if內的語句從不計算。而是對else屬性進行評估。jQuery的.VAL()沒有返回的期望是什麼

沒有人有任何想法,爲什麼這可能發生?我似乎無法孤立這個問題,提供一個最小的工作示例;我的jQuery是如下:

jQuery(document).ready(function() {  
    jQuery('#test').change(function() { 
     if(jQuery(this).val() == "-1") 
     { 
      jQuery(this).addClass("empty-combo"); 
     } 
     else 
     { 
      jQuery(this).removeClass("empty-combo"); 
     } 
    }); 

    jQuery('#test').change(); 
}); 
+0

http://jsfiddle.net/xtxtfmth/裹在[文件就緒(https://api.jquery.com/ready/)處理程序代碼 – Satpal 2015-04-01 16:27:49

+0

試圖向我們展示了'的console.log(jQuery的(本).VAL());' – Legendary 2015-04-01 16:28:13

+0

@Legendary它簡單地返回'null'這是對比什麼鉻檢查元件範圍內的變量聲明'元件的value'是? – 2015-04-01 16:31:51

回答

3

更改條件:

if(jQuery(this).val() == null) 

它的工作。