2012-04-16 7 views
-1

私は、以下のJavaScriptコードのjQueryのバージョンであるかを知りたいのjQueryを使用しています:このコードのjQueryバージョンとは何ですか?

document 
     .getElementById('cars') 
     .addEventListener('change', handleFileSelect, false); 

jQueryのaddEventListener()を好きではないためです。だろう

+7

何を試しましたか? SOは無料のコーディングサービスではありません。 jQueryを学ぶことから始めましょう:http://docs.jquery.com/Tutorials –

+2

jQueryではありません。それは純粋なjavascriptです – emilan

+0

私はこの質問を投稿する前にbindメソッドを試しましたが、動作していないようです。 – user1333290

答えて

5

...

$('#cars').change(handleFileSelect); 

jQueryのaddEventListener()ようありません。実際、私はそれがイベントの好ましい実装であることを確信しています(標準である)。

ダウン壊れ01​​
2
$('.#cars').change(handleFileSelect); 

// document.getElementById('cars') 
$('#cars');      // #<name> is id reference, 
            // .<name> is class reference 
            // <name> is an HTML tag reference 

// addEventListener 
.bind('change', handleFileSelect) // "broad" binding 
.change(handleFileSelect)   // jQuery short-hand of above 
1

基本的にあなたの答えはこれです:あなたが滞在したい場合がありますのでchangeイベントがビルトインイベントハンドラいくつかの他で使用されているが

$("#files").bind("change",handleFileSelect); 

その特定の文字列をイベントとして使用しないでください。もちろん、というイベントをキャプチャしようとしている場合を除きます。 :P

変更イベントは、値が変更されたときに要素に送信されます。この イベントは、<input>エレメント、<textarea>ボックス、<select> エレメントに制限されています。選択ボックス、チェックボックス、およびラジオボタンでは、ユーザーがマウスで選択するとすぐにイベント が発生しますが、その他の要素タイプの場合は、 要素がフォーカスを失うまでイベントが延期されます。


jQuery documentationが、これはbind機能を記述するために書かれています:

は、要素のためのイベントにハンドラを接続します。

4
$("#cars").bind("change",handleFileSelect) 
1

あなたは試みることができる:

$('#cars').bind('change', function() { //your code goes here }); 

jQueryのドキュメントによると:

の偉大な数を考えると

http://api.jquery.com/bind/(バインド)

http://api.jquery.com/live/(生きる)

をcあなたは、あなたの理解を容易にする者と、より明確な者を選ぶ必要があります。

希望すると助かります!

+0

'.live'はjQuery 1.7以降で廃止されていることに注意してください。 –

+0

ええ、研究目的のためにのみ。ここで新しい方法を "on"メソッドにします:http://api.jquery.com/on/ありがとう! – axcdnt

0
$("#cars").on('change', handleFileSelect); 
-1
$("#cars").live("change",handleFileSelect) 

ご入力要素を動的にjavascriptのによって作成された場合、これは、参考になります。

+1

これをあなたの既存の回答とマージする必要があります。 – Lix

+1

'live()'は最近の 'on()'よりも推奨してはいけません。 – alex

関連する問題