IE

2016-09-09 11 views
0

でフォーム上の入力を追跡するために、どのようにして行うことでそれを達成しましたalredy:IE

$('#myforn:input').on("input", myMethod); 

しかし、この方法がサポートされていないIEを。別のアプローチは、他のトピックで提案されている

は次のようなものです:私のフォームどちらの入力があった場合には動作しません

 $('#myForm').on('propertychange input', function(ev){ 
     myMethod() 
    }); 

どうすれば達成できますか?

答えて

0

これは、あなたが探しているものです。

$('#myForm').on('change', 'input', function() { 
    console.log(this, ' input was changed.') 
}); 

あなたもtextareaselect入力を持っている場合は、あなたのコードはinput, textarea, selectを使用する必要があります。

$('#myForm').on('change', 'input, textarea, select', function() { 
    console.log(this, ' input was changed.') 
}); 

(テキストエリアのような)いくつかの入力がchangeを送りますフォーカスを失った場合にのみ通知を送信します。あなたもkeyup、​​またはkeypressイベントを使用することもできます。

$('#myForm').on('change keyup keydown keypress', 'input, textarea, select', function() { 
    console.log(this, ' input was changed.') 
}); 
0

いつもあなたがテストしているIEのバージョン(複数可)を指定し、また、jQueryのバージョンしてください。

jQuery がIEを完全にサポートしているため、これらの詳細は重要です。したがって、IEでは他のブラウザと同じように動作するはずです。それはその後、ここにないかどうかを確認するためにいくつかのことです。

  • あなたのIEのバージョンと互換性がないのjQueryのバージョンを使用することができます。 IE8以前をサポートする必要がある場合は、jQuery v1.xを使用する必要があります。 jQuery v2とv3は新しいIEバージョンのみをサポートします。

  • IEがQuirksモードでページをレンダリングしているかどうかを確認します。これにより、jQueryとの互換性が失われます。標準モードを使用するようにページを修正します。