我的概念是进行信用卡验证。在信用卡年度,数据应根据当前年份动态生成..它应该只显示即将来临的年份。 例如。我们在2016年..所以下拉数据将显示为2016年至2040年......下拉数据是动态的..我已经实现了它..但是,我的问题是显示"选择选项&# 34;
我想首先显示选择选项以执行验证..给我一些想法来做到这一点.. 这是我的示例代码..
<select id="ccyear" name="ccyear"></select><br>
<span>
<script>
var start =new Date().getFullYear();
var end = new Date().getFullYear() + 24;
var options = "";
for(var year = start ; year <=end; year++)
{
options += "<option>"+ year +"</option>";
}
document.getElementById("ccyear").innerHTML = options;
</script>
</span>
&#13;
答案 0 :(得分:3)
尝试这个......
<select id="ccyear" name="ccyear"></select><br>
<span>
<script>
var start =new Date().getFullYear();
var end = new Date().getFullYear() + 24;
var options = "";
var i = 0;
for(var year = start ; year <=end; year++)
{
if (i == 0){
options += "<option selected>Select option</option>";
i++;
} else {
options += "<option value="+ year+">"+ year +"</option>";
}
}
document.getElementById("ccyear").innerHTML = options;
</script>
</span>
&#13;
答案 1 :(得分:2)
将此var options = "";
行更改为var options = "<option>Select Option</option>";
<select id="ccyear" name="ccyear"></select><br>
<span>
<script>
var start =new Date().getFullYear();
var end = new Date().getFullYear() + 24;
var options = "<option>Select Option</option>";
for(var year = start ; year <=end; year++)
{
options += "<option>"+ year +"</option>";
}
document.getElementById("ccyear").innerHTML = options;
</script>
</span>
答案 2 :(得分:1)
onchange
事件很容易获得用户选择的价值
<select id="ccyear" name="ccyear" onchange="test()"></select><br>
<span>
<script>
( function (){
var start =new Date().getFullYear();
var end = new Date().getFullYear() + 24;
var options = "";
for(var year = start ; year <=end; year++)
{
options += "<option>"+ year +"</option>";
}
document.getElementById("ccyear").innerHTML = "<option>Select option</option>"+options;
console.log( document.getElementById("ccyear").value);
})()
function test(){
console.log( document.getElementById("ccyear").value);
}
</script>
</span>
答案 3 :(得分:1)
改变这个:
var options = "";
到此:
var options = "<option>Select Option</option>";
答案 4 :(得分:1)
我认为这对您有用
<select id="ccyear" name="ccyear">
<option value=''> Select Project </option>
</select><br>
<script>
var start =new Date().getFullYear();
var end = new Date().getFullYear() + 24;
var options = "";
for(var year = start ; year <=end; year++)
{
options += "<option>"+ year +"</option>";
}
document.getElementById("ccyear").innerHTML = "<option value=''> Select Option </option>"+options;
</script>
答案 5 :(得分:1)
你可以使用jQuery的append函数来做到这一点。 另外,我建议为每个选项元素提供一个value属性。
您的代码看起来像这样。
var start = new Date().getFullYear();
var end = start + 24;
for (var year = start; year <= end; year++) {
console.log("loop");
$("#ccyear").append('<option value="' + year + '">' + year + '</option>');
}
您可以在这里查看代码 https://jsfiddle.net/arijitkanrar/pfgwa2n2/
答案 6 :(得分:0)
如果您正在使用php
,那么为什么不尝试使用php script
试试这个php
代码 -
<?php
date_default_timezone_set('Asia/Kolkata');
$current_year = date('Y');
$end_year = date('Y', strtotime('+24 year'));
$select = '<select id="ccyear" name="ccyear">';
for($i = $current_year; $i <= $end_year; $i++)
$select .= '<option value="'.$i.'">'.$i.'</option>';
$select .= '</select>';
echo $select;
?>