我希望有今年和明年的选项,但我无法弄清楚如何将JavaScript变量集成到value = ""
和选项标签内的文本中。这段代码演示了我的意思(显然它无效,但显示我的意思)。所以今天第一个选择是2013年和下一个选择,2014年。谢谢。
var date = new Date(),
y = date.getFullYear();
<html>
<select id = "year">
<option value = "y" >y</option>
<option value = "(y + 1)">(y + 1)</option>
</select>
</html>
答案 0 :(得分:2)
使用jQuery:
var sel = $("#year"),
date = new Date(),
y = date.getFullYear(),
newOptions = "";
newOptions += "<option value='" + y + "'>" + y + "</option>";
newOptions += "<option value='" + (y + 1) + "'>" + (y + 1) + "</option>";
sel.append(newOptions);
答案 1 :(得分:1)
既然你提到你正在使用jQuery,你可以使用它:
var currentYear = (new Date).getFullYear();
var opts;
$('#year').append(function () {
for (var i = currentYear; i <= currentYear + 1; i++) {
opts += "<option value='" + i + "'>" + i + "</option>";
}
return opts;
})
<强> jsFiddle example 强>
答案 2 :(得分:1)
不需要jQuery。简单的HTML DOM可以为您完成工作。 样品&gt;&gt; http://jsfiddle.net/47dDu/
<!DOCTYPE html>
<html>
<body>
<select id="MySelectBox">
<option value="1" id="this_year"></option>
<option value="2" id="next_year"></option>
</select>
<script type="text/javascript">
var d = new Date();
var x = document.getElementById("this_year");
x.innerHTML=d.getFullYear(); //get this year
var y = document.getElementById("next_year");
y.innerHTML=d.getFullYear()+1; //get next year
</script>
</body>
</html>