我需要在第二个下拉列表中填写第一个下拉列表中选择价值的年份。年份范围介于1900到2050年之间
任何人都可以帮忙吗?
答案 0 :(得分:0)
首先,创建一个select元素。所以在你的HTML文档中,
<select id="year">
<option value="-1"> </option>
</select>
如果用户不想填写,则有一个空选项。可以随意给它另一个值或另一个文本,如“请选择一年”。其背后的原因是,如果用户已禁用javascript,则不会追加年份。您将以空的选择框结束。
然后使用脚本添加更多选项元素以填充多年。
// get selectbox
var selectBox = document.getElementById('year');
// loop through years
for (var i = 2050; i >= 1900; i--) {
// create option element
var option = document.createElement('option');
// add value and text name
option.value = i;
option.innerHTML = i;
// add the option element to the selectbox
selectBox.appendChild(option);
}
请确保getElementById
处的参数与HTML选择元素的ID相同。
答案 1 :(得分:0)
一个不必要的一个班轮:( DEMO)
$((new Array(150) + "").split(",").map(function (i,j) {return $("<option>").append(j + 1900)[0];})).appendTo($("select"));
展开:
var option = function (i,j) {return $("<option>").append(j + 1900);};
var options = (new Array(150) + "").split(",").map(option);
$("select").append(options);
答案 2 :(得分:0)
我创建了jsfiddle请看 我已将更改事件附加到第一个组合框并根据其填充第二个组合值的值。 你可以在功能中做任何你想做的事情
$("#s1").on("change", function(){
var value = $(":selected", this).val();
if(value == 'a'){
$("#s2").val('2000');
}else{
$("#s2").val('2010');
}
})
答案 3 :(得分:0)
只需创建一个从1900开始并在2050(或另一侧)结束的for循环,并将选项附加到下拉列表中:
<select id="myDDL"></select>
var i=0;
for(i=1900;i<=2500;i++)
{
$("#myDDL").append("<option value='"+i+"'>"+i+"</option>")
}