複数のテキスト入力フィールドに値を共有させようとしています。テキストフィールドの名前はStartDate#で、#は数字に置き換えられます。次のコードを使用しようとしています。
function SetTimeFrame(element) {
if (document.Labs.SameDate.checked==true) {
var Elements=document.Labs.elements.length;
for (var i=0; i<Elements; i++) {
if (document.Labs.elements[i].type=='select-one') {
document.Labs.elements[i].options[element.selectedIndex].selected=true;
document.getElementById("StartDate"+i).value = document.getElementById("StartDate0").value;
}
}
}
}
このコードを使用すると、次のエラーが発生します。
位置(45:7)でのJavascriptエラー:'document.getElementById [...]'がnullであるか、オブジェクトではありません
45:7は次の行です。
document.getElementById("StartDate"+i).value = document.getElementById("StartDate0").value;
forloopを反復処理するときに、「i」の値を「StartDate」に追加していないようです。ページに「StartDate0」と「StartDate1」があることを知っているので、それらがnullではないことを知っています。
変数とID名を持つgetElementById、getElementByIdを使用してJSPで変数を指定して要素にアクセスする方法など、私のような他のいくつかのStackOverflowの質問を調べました。しかし、どちらも成功した解決策を与えることを証明しませんでした。
どんな助けでも大歓迎です。