0

私は自分のJSPでこの関数を定義しています:

function addcolor(){
    alert("found " + document.getElementById("clrCd").value);
}

私のHTML(Struts 1.3アプリから)

<input type="text" name="clrCd" maxlength="2" size="2" value="">
<input type="button" name="add" value="ADD" onclick="addcolor()">

ブラウザが互換モードのときに [追加] ボタンをクリックすると、テキスト入力の値を含むアラートが表示されます

ブラウザーを (F12 コンソール経由で) IE8 標準モードにして同じコードを実行すると、次のようになります。

エラー: プロパティ 'value' の値を取得できません: オブジェクトが null または未定義です

一体なぜこんなことが起きているのだろう....私は丸一日を IE の扱いに費やしてしまった。

これはレガシー アプリであり、あまり変更することはできませんが、bootstrap や angularJS などの HTML5 機能の使用を開始できるように、Quirks モードを解除したいと考えています。

何か案は?

ジェイソン

4

2 に答える 2

2

これは「IEのでたらめ」ではなく、 id を持つ要素がないということですclrCd。name 属性のみを設定しました。

要素にを追加するid="clrCd"と、より多くの運が得られます。

于 2013-03-15T20:59:06.427 に答える