48

コードは次のとおりです。

<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ファイルを含めることができませんでした。)

4

6 に答える 6

119

デモ: http: //jsfiddle.net/NbGBj/

$("document").ready(function(){

    $("#upload").change(function() {
        alert('changed!');
    });
});
于 2012-08-08T08:42:17.557 に答える
12

または可能性があります:

$('input[type=file]').change(function () {
    alert("hola");
});

具体的には:$('input[type=file]#fileUpload1').change(...

于 2012-08-08T08:42:35.220 に答える
4

それはうまくいくはずです、あなたは$(document).ready()呼び出しでコードをラップしていますか?それを使用しない場合、または使用するlive場合

$('#fileupload1').live('change', function(){ 
    alert("hola");
});

これは、jQuery1.4.4に対して機能するこのjsFiddleです。

于 2012-08-08T08:39:51.560 に答える
4

This jsfiddle works fine for me.

$(document).delegate(':file', 'change', function() {
    console.log(this);
});

Note: .delegate() is the fastest event-binding method for jQuery < 1.7: event-binding methods

于 2012-08-08T08:41:09.850 に答える
2

これを使用してみてください:

HTML:

<input ID="fileUpload1" runat="server" type="file">

JavaScript:

$("#fileUpload1").on('change',function() {
    alert('Works!!');
});

</ p>

于 2012-08-08T08:38:59.663 に答える
2
 $('#fileupload').bind('change', function (e) { //dynamic property binding
alert('hello');// message you want to display
});

これも使えます

于 2015-02-02T09:56:17.047 に答える