2013-12-23 48 views
-1

我有選擇標籤有一個下拉列表,所以當用戶提交他的信用卡到期年,他有一個下拉列表來選擇一年。從javascript函數返回一個字符串到html

我打算有一個長期的網站,併爲今年的增長,我將手動更新這些年來,所以我想,以與JavaScript的東西,所以它返回本年度

到目前爲止,我有一個返回年份的jscript函數,我希望html從選項標籤中獲得年份。示例代碼我試過

<script> 
    function getDate(){ 
     return new Date().getFullYear(); 
    } 
</script> 
<select id="year"> 
    <option value="">Year</option> 
    <option value="getDate()">getDate()</option> 
</select> 
+1

' - >':http://www.w3.org/wiki/Creating_and_modifying_HTML。我建議查看一些關於如何使用JavaScript進行DOM操作的教程。 –

+2

您錯誤地鍵入'function',否則您的代碼將無法工作。 – qwertynl

+0

Javascript是基於事件的,除非將其綁定到事件,否則它不會被調用。例如,您可以在頁面加載時設置此選項的值,當用戶單擊某個元素時,元素更改等時。 – Goose

回答

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> 
0

這裏是填充選擇與當前耶和未來10年的一個功能,你可以改變它在對,你只需要調用一次加載頁面:

<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

+0

thanx您的回覆,但我怎麼實際上調用它來填充? – Jenny

+0

將函數放入

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 和年會自動更新用戶的每次訪問

+0

這不是OP所要求的。 – Cilan

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