我选择标记有一个下拉列表,所以当用户提交信用卡的到期年份时,他有一个下拉列表来选择一年。
我打算建立一个长期网站,随着年份的增长,我将不得不手动更新这些年份,所以我想用JavaScript做一些事情,以便它返回当前年份
到目前为止,我有一个返回年份的jscript函数,我希望html从options标签中获取年份。我试过的示例代码
<script>
function getDate(){
return new Date().getFullYear();
}
</script>
<select id="year">
<option value="">Year</option>
<option value="getDate()">getDate()</option>
</select>
答案 0 :(得分:3)
除非触发,否则你的getDate函数不会执行任何操作。有许多方法可以实现此目的,以下示例将当前年份的选项添加到正文onload()
事件的选择菜单中。
<html>
<head>
<script>
function getDate() {
var year = document.getElementById('year');
var option = document.createElement('option');
option.text = new Date().getFullYear();
year.add(option,null);
}
</script>
</head>
<body onload="getDate()">
<select id="year">
<option value="">Year</option>
</select>
</body>
</html>
答案 1 :(得分:0)
这是一个用当前yeah和接下来的10年填充select的函数,你可以在for中更改它,你只需要在页面加载后调用它:
<head>
<script>
function addOptions() {
var cmbYears = document.getElementById('year');
for (var i = 0; i < 10; i++) {
var y = new Date().getFullYear() + i;
var opt = document.createElement('option');
opt.value = y;
opt.innerHTML = y;
cmbYears.appendChild(opt);
}
}
</script>
</head>
<body onload="addOptions()">
<select id="year"></select>
</body>
它做的是,将选择放在var中,然后循环并创建每次添加不同年份的选项。
修改:FIDDLE
答案 2 :(得分:0)
您需要在HTML页面上实际设置日期,而不仅仅是期望它填充<select>
<html>
<head>
<title>Get a Date</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width">
<script>
function getDate() {
var dateText = document.getElementById("dateText");
var myDate = new Date();
dateText.innerHTML = myDate.getFullYear();
}
</script>
</head>
<body>
<div id="dateText"></div>
<button onclick="getDate()">Get Date</button>
</body>
</html>
答案 3 :(得分:0)
这是您的固定代码:
<script>
function getDate(){
return new Date().getFullYear();
}
</script>
<select id="year">
<option value="">Year</option>
<option value="getDate()" onclick = "document.body.innerHTML = getDate()">getDate()</option>
</select>
首先:function
拼写错误。
第二:您将value
设为getDate()
而非onclick
。修复了修复代码的问题。
我设置onclick
让页面说出输出(年份),但我不知道你想要什么。
这是一个小提琴:http://jsfiddle.net/m8kBt/
答案 4 :(得分:0)
<select id="select_year"></select>
<script type="text/javascript">
thisyear=new Date().getFullYear();
numberofyear=15;
for(i=0; i<=numberofyear; i++)
{
node=document.getElementById("select_year");
var option=document.createElement("option");
option.text=(thisyear+i);
option.value=(thisyear+i);
node.add(option,null);
}
</script>
此脚本插入2013年至2028年的选择值...:D 和年份自动更新用户的每次访问
答案 5 :(得分:0)
如果您正在寻找jquery中的解决方案,那么这是您的解决方案
$(function(){
var year = new Date().getFullYear();
var options=[];
for(var i=0;i<15;i++)
{
options.push("<option value=\""+(year+i)+"\">"+(year+i)+"</option>");
}
$("#ddlyear").html(options.join(''));
});
从现在起15年后,这将永远填满下拉列表。
你可以查看小提琴here