-4

こんにちは、jquery を学んでいるので、簡単なコードをプログラムしました。これがコードです。

$(document).ready(function(){
  $('input[type="file"]').live({
    change : function(){
      alert('ok');
    }
  });
});

しかし、それは問題は何ですか?

4

4 に答える 4

1

jQueryのlive() ドキュメントには次のように記載されています:

jQuery 1.7 以降、.live() メソッドは非推奨になりました。.on() を使用して、イベント ハンドラーをアタッチします。古いバージョンの jQuery のユーザーは、.live() よりも .delegate() を使用する必要があります。

on()( documentation ) を使用してイベントをバインドします (要素が動的に追加されなかった場合):

$('input[type="file"]').on('change',function (){
   //Stuff
});

注 : これは、$('input[type="file"]').change()

関数を動的に追加された DOM 要素live()にバインドしていた場合は、次のように使用する必要があります。on()

$(document).on('change', 'input[type="file"]', function (){
   //Stuff
});
于 2013-03-20T17:36:14.593 に答える
1

ライブは非推奨です。これを試してください:

デモ

$(document).ready(function(){
     $(document).on('change','input[type="file"]',function(){
         alert('ok');
     });
});
于 2013-03-20T17:33:20.833 に答える
0

.live()jQuery 1.9 から削除されました。 代わりに
使用してみてください$('input[type="file"]').change(function() { ... })

于 2013-03-20T17:33:36.103 に答える
0

.on().live() は非推奨です。

$(document).ready(function(){
 $(document).on('change','input[type="file"]',function(){
     alert('ok');
 });
});
于 2013-03-20T17:33:48.990 に答える