0
$('.inlineDatepickerDepart').datepick({ minDate: '<%=@start_display%>', maxDate: '<%=@end_display%>',
   monthsToShow: 2,
  dateFormat: "dd/mm/yyyy",
  onSelect: function(date) {    

var selected = parseInt(document.getElementById( "guest_adult")。value)+ parseInt(document.getElementById( "guest_kid")。value); アラート(選択済み);

for(var x=0;x<selected;x++)
{
document.getElementsByClassName("depart1")[x].innerHTML = '2012-03-24';
document.getElementsByClassName("return1")[x].innerHTML = '2012-04-24';
}
},
});

アラートはゲストの数を示します。これはdepart1[0]の値のみを置き換えます。ループ全体および「return1」クラスに対してもそうではありません。誰かが私にそれを解決するための鍵を与えることができますか

4

4 に答える 4

3

関数が存在しないという事実のような基本的なエラーをキャッチするためにコンソールを見る必要があります。getElementByClassName

代わりにgetElementsByClassNameを使用してください。

于 2013-02-25T10:03:12.933 に答える
2

複数形です:

document.getElementsByClassName
                   ^
于 2013-02-25T10:03:08.960 に答える
2

使用する必要があります:

getElementsByClassName

同じクラスが適用される要素が複数存在する可能性があるため、複数形になります。

于 2013-02-25T10:04:16.480 に答える
0

最後に、次のコードを使用して動作します。

var a;
var b;
for(var x=0;x<selected;x++)
{
a=document.getElementsByClassName("depart1")[x];
a.innerHTML = depart_date;
b=document.getElementsByClassName("return1")[x];
b.innerHTML = return_date;
}
于 2013-02-25T10:51:53.040 に答える