63

onChangeまたは同様のイベントをすべてのform要素に使用するにはどうすればよいですか? onChange各フィールドを個別に使用したくありません。

4

2 に答える 2

41

jQuery を使用しているchange場合は、フォーム要素でイベントを使用できます。これは、jQuery ではイベントがバブルアップするためです。

$('#formId').change(function(){...});

プレーンな JavaScript を使用している場合、変更イベントはバブリングしません (少なくともクロス ブラウザーではありません)。したがって、イベント ハンドラーを各入力要素に個別にアタッチする必要があります。

var inputs = document.getElementsByTagName("input"); 
for (i=0; i<inputs.length; i++){
   inputs[i].onchange = changeHandler;
}

(もちろん、すべての select と textarea に対して同様のことを行う必要があります)

于 2012-05-25T20:24:25.343 に答える