ここにあなたのコードのPHP - > javascriptポートでの私の試みです。 6か月間の正確な日数は、その期間の開始日と終了日によって異なります。そのため、正確な6か月の範囲が必要な場合は、関連する各月の日数に基づいてより多くの計算を行う必要があります。以下のコードでは、6ヶ月の時間枠内で182日間と仮定しています。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Untitled Document</title>
</head>
<script>
function newOption(value, text) {
var opt = document.createElement('option');
opt.text = text;
opt.value = value;
return opt;
}
function formatDate(date) {
var da = ['Sun','Mon','Tue','Wed','Thu','Fri','Sat'],
ma = ['January','February','March','April','May','June','July','August','September','October','November','December'],
dr = date.getDate(),
wr = date.getDay(),
mr = date.getMonth(),
yr = date.getFullYear(),
dn = da[wr],
ds = (dr.toString().length == 1) ? '0' + dr.toString() : dr.toString(),
mn = ma[mr],
ys = yr.toString(),
v = dn + ' ' + ds + ' ' + mn + ' ' + ys;
return v;
}
function PopulateDateSelector(startDate, endDate, selector) {
while(selector.length > 0) selector.remove(0);
while(startDate < endDate) {
selector.add(newOption(startDate.getTime().toString(), formatDate(startDate)));
startDate.setTime(startDate.getTime() + (24*60*60*1000));
}
}
</script>
<body>
<select id="dateSelector"></select>
<script type="text/javascript">
var s = document.getElementById('dateSelector'),
startDate = new Date(),
endDate = new Date(startDate.getTime() + (182*24*60*60*1000));
//182 is estimated number of days in a 6 month period.
PopulateDateSelector(startDate,endDate,s);
</script>
</body>
</html>
あなたがこれまでのところが出ていますか? – Zar
JavaScriptがどこに入っているのか見当たりません... –