2013-05-20 19 views
0

我想要选择今年和明年的选项,但我无法弄清楚如何将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

你使用jQuery? –

+0

是的,大部分脚本是jquery – user2014429

回答

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

+1

谢谢,正是我所需要的,工作很棒。 :) – user2014429

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); 

DEMO:http://jsfiddle.net/YxqcT/

+0

谢谢你的回答。 +1 – user2014429

1

不需要jQuery。简单的HTML DOM可以为您完成这项工作。 样品>>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> 
+0

一个不错的纯Js选项,但是它没有将该值定义为年份。谢谢你的回答,+1 – user2014429

相关问题