从javascript函数返回一个字符串到html

时间:2013-12-23 21:28:09

标签: javascript html

我选择标记有一个下拉列表,所以当用户提交信用卡的到期年份时,他有一个下拉列表来选择一年。

我打算建立一个长期网站,随着年份的增长,我将不得不手动更新这些年份,所以我想用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>

6 个答案:

答案 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