1

onPropertyChangeIEでのみ動作します。あるテキストボックスにテキストを入力するために使用onPropertyChangeしましたが、同時に同じテキストが別のテキストボックスに表示されます。問題を解決するために利用できる他の方法はありますか?

HTML:

<input type="text" id="firstName" name="firstName" value="" maxlength="64"size="30" class="controlStyle" onPropertyChange="displayName(this, document.frmSkills.EmpLn, document.frmSkills.EmpDn,displayFormat)">
4

2 に答える 2

1

上記の質問の解決策を得ました。以下はコードです。皆様、ご丁寧な回答ありがとうございます。

window.onload=function() {
  document.getElementById("textarea_one").onkeyup=function() {     
      document.getElementById("textarea_three").value=this.value+ " "+document.getElementById("textarea_two").value;
  }
  document.getElementById("textarea_two").onkeyup=function() {     
      document.getElementById("textarea_three").value=document.getElementById("textarea_one").value+" "+this.value;
  }
} 
于 2012-12-13T16:13:18.133 に答える
1

他のブラウザーは、任意のテキスト入力イベント (oninput) でイベントをサポートします。

IE もカバーするには、両方のイベントを処理する必要があります。

textelement.addEventListener('input',function,false)) または textelement.oninput=

これは、http: //help.dottoro.com/ljhxklln.phpからのものです。

oninput イベントはバージョン 9 から Internet Explorer でサポートされていますが、oninput イベントは Internet Explorer 9 でバグがあります。

oninput は、テキストエリア、input:text、input:password、または input:search 要素のコンテンツが変更されたことを検出する場合に便利です。これらの要素の onchange イベントは、変更直後ではなく、要素がフォーカスを失ったときに発生するためです。 . oninput イベントは、Internet Explorer バージョン 9 以降でサポートされています。バージョン 9 より前の Internet Explorer でこれらの要素のコンテンツが変更されたときに発生するイベントが必要な場合は、onpropertychange イベントを使用します。

oninput イベントは、Internet Explorer 9 ではバグがあります。文字が挿入されたときのみ、ユーザー インターフェイスを介してテキスト フィールドから文字が削除されても、oninput イベントは発生しません。onpropertychange イベントは Internet Explorer 9 でサポートされていますが、oninput イベントと同様にバグがあり、削除時に発生しません。文字はいくつかの方法で削除できるため (Backspace キーと Delete キー、CTRL + X、コンテキスト メニューの [切り取り] コマンドと [削除] コマンド)、すべての変更を検出する適切なソリューションはありません。コンテキスト メニューの [削除] コマンドで文字を削除した場合、Internet Explorer 9 の JavaScript では変更を検出できません。oninput イベントのイベント リスナーを登録するには、必ず Internet Explorer 9 の addEventListener メソッドを使用してください。oninput イベントに対して attachEvent メソッドが機能しません。

于 2012-12-13T13:59:48.183 に答える