代码是:
<input ID="fileUpload1" runat="server" type="file"
以下工作正常:
<input onchange="javascript:alert('hola');" ID="fileUpload1" runat="server" type="file"
我想使用jQuery获得此结果,但这不起作用:
$('#fileUpload1').change(function (e) {
alert("hola");
});
我错过了什么? (编辑:是的我错过了包含* .js文件。)
答案 0 :(得分:112)
$("document").ready(function(){
$("#upload").change(function() {
alert('changed!');
});
});
答案 1 :(得分:10)
或者可能是:
$('input[type=file]').change(function () {
alert("hola");
});
具体来说:$('input[type=file]#fileUpload1').change(...
答案 2 :(得分:4)
它应该可以正常工作,你是否在$(document).ready()
电话中包装代码?如果不使用或使用live
即
$('#fileupload1').live('change', function(){
alert("hola");
});
这是针对jQuery 1.4.4
的jsFiddle答案 3 :(得分:4)
这jsfiddle对我来说很好。
$(document).delegate(':file', 'change', function() {
console.log(this);
});
注意:.delegate()是jQuery的最快事件绑定方法&lt; 1.7:event-binding methods
答案 4 :(得分:2)
尝试使用它:
<强> HTML:强>
<input ID="fileUpload1" runat="server" type="file">
<强> JavaScript的:强>
$("#fileUpload1").on('change',function() {
alert('Works!!');
});
答案 5 :(得分:2)
$('#fileupload').bind('change', function (e) { //dynamic property binding
alert('hello');// message you want to display
});
你也可以使用这个