1

このページには、特定の名簿の学生に関する情報を入力するためのフォームがあります。各学生は、ドロップダウンボックスとコメントフィールドのあるテーブルに一覧表示されます。学生ごとに「別の追加」ボタンがあるので、ユーザーが学生に関する2番目のメモを入力したい場合は、入力できます。

ボタンをクリックすると、次のjavascript関数が起動します。

var counter=1;
function multipleDemerits(studentID) {
counter++;
var anotherDemeritRow = "<select name='behavior_"+studentID+"_"+counter+"'><option value=0>Select  --></option><option value=0></option><option value=0>1 demerit behaviors</option><option value=1>&nbsp;&nbsp;unprepared</option><option value=2>&nbsp;&nbsp;incomplete hw</option><option value=3>&nbsp;&nbsp;electronics/phone</option><option value=4>&nbsp;&nbsp;uniform</option><option value=5>&nbsp;&nbsp;talking/making noise</option><option value=0></option><option value=0>2 demerit behaviors</option><option value=6>&nbsp;&nbsp;tardy</option><option value=7>&nbsp;&nbsp;wasting time</option><option value=8>&nbsp;&nbsp;food/gum</option></select>&nbsp;&nbsp;Comments: <input name='comments_"+studentID+"_"+counter+"' type='text' size='30' maxlength='100'/><br />&nbsp;";
document.getElementById(studentID).innerHTML += anotherDemeritRow;
}   

新しいドロップダウンとコメントフィールドはMacブラウザでは完全に表示されますが、WindowsFirefoxやIEではそうではありません。現在のテーブル行の高さは増加しないため、追加のフィールドがテーブルの残りの行と重なり始めます。私が欲しいものではありません。

Windowsブラウザの専門家からのアイデアはありますか?ありがとう!

更新:jQueryの追加に変更...違いはありません。ただし、関数の最初にアラートステートメントを追加すると、機能するようになります。は?!?!

4

2 に答える 2

2

FirefoxとIEでのテーブルレンダリングの問題を解決するため、「innerHTML」の代わりに「 append() 」を使用する必要があると思います。

于 2009-08-31T02:56:03.503 に答える
0

テーブルの行表示をブロックにしてみてはいかがでしょうか? これで高さが決まるかもしれません。

Windows Firefox はページに関する問題を報告しますか?

于 2009-08-31T04:34:20.237 に答える