2013-06-02 60 views
1

jquery.min.js工作正常,但是當我用jquery.1.9.js替換jquery.min.js時,我的代碼無法工作。爲什麼代碼不能使用名爲jquery 1的腳本9

<script src="jquery.min.js" type="text/javascript"></script> 
<script> 
$('#imageFile').live("change", function() { 
    $("#imageSize").text(""); 
    var tt = $(this).val(); 
    var size = this.files[0].size; 
    $("#imageFile").val(Math.ceil(size/1024)); 
}); 
</script> 
<input id="imageFile" type="file" /> 
<input id="imageSize" type="text" /> 
+2

你甚至不必使用'這裏.live'。只需將腳本放在元素後面並正常綁定事件處理程序即可。 –

+0

可能的[jQuery 1.9 .live()不是函數的重複](http://stackoverflow.com/questions/14354040/jquery-1-9-live-is-not-a-function) –

回答

1

使用on()方法:

$(document).on("change", "#imageFile", function(){ 

    $("#imageSize").text(""); 
    var tt = $(this).val(); 
    var size = this.files[0].size; 
    $("#imageFile").val(Math.ceil(size/1024)); 


}); 

參見文檔here

+1

如果你的意思是你的代碼應該替換OP的代碼,那麼這將不起作用。代碼執行時元素還不可用。 –

+1

我雖然元素已經在那裏,無論如何我編輯,它應該隨時工作 – isJustMe

+0

非常感謝你@isJustMe ...它工作...罰款... thanx ...再次... –

4

由於live()已除去的jQuery 1.9。改爲使用on()。請參閱鏈接的文檔以獲取更多信息。

+0

thanx您的回覆,但我必須使用jquery.1.9.js,那麼我必須做出什麼改變才能使用1.9? –

+2

@Adeeb:正如答案所說,你必須使用'.on'。看看文檔。也許這也有幫助:[jQuery 1.7 - 將live()變成on()](http://stackoverflow.com/q/8021436/218196)。 –

+0

正如你所說的,我使用了'.on',但它不工作。 –

相關問題