2017-04-07 26 views
1

顯然我的jquery函數沒有定義。我不知道爲什麼。我在腳本文件之前調用了jquery,所以在我將它放入函數之前,情況並非如此,jquery工作正常。JQuery函數沒有在腳本文件中定義

(function ($) { 

function selectCharacter(){ 
    $('select.character_select').change(function(){ 

     alert('Select field value has changed to' + $('select.character_select').val()); 



    }); 
} 

})(jQuery); 


selectCharacter(); 
+1

的可能的複製(http://stackoverflow.com/questions/111102/how-do-javascript-closures-工作) –

回答

5

這是一個範圍問題。 function創建一個新的範圍。所以,你試圖在你的函數外調用一個私有變量到你的函數中。在那裏你調用該函數可以通過更改解決這個問題:?如何JavaScript的關閉工作]

(function ($) { 
    function selectCharacter() { 
     $('select.character_select').change(function() { 
      alert('Select field value has changed to' + $('select.character_select').val()); 
     }); 
    }  
    selectCharacter(); 
})(jQuery); 
相關問題