日期:2014-05-16  浏览次数:20520 次

利用js给select element产生年份
function generateYearFun() {
var now = new Date();
var nowYear = now.getFullYear();
var selectObj = document.getElementById("queryByYear");
var optionObj = document.createElement("option");
optionObj.Value = "0";
optionObj.text = "-----請選擇年份-----";
selectObj.add(optionObj);
for(var i = 0; i <= nowYear - 1970; i++) {
var optionCon = document.createElement("option");
optionCon.Value = nowYear - i;
optionCon.text = nowYear - i;
selectObj.add(optionCon);
}
}

以上方法在IE下有效,但在ff下是无效的,要想兼容IE和ff,就用下面的方法:
function generateYearFun(){
    var now = new Date();
    var nowYear = now.getFullYear();
    var selectObj = document.getElementById("queryByYear");
    selectObj.options.add(new Option("-----請選擇年份-----",0));
    for(var i = 0; i <= nowYear - 1970; i++) {
        selectObj.options.add(new Option(nowYear - i,nowYear - i));
    }
}

先获取当前年份now,再获得select对象selectObj(页面中已存在select元素),然后构造一个option元素作为提示信息,在这个例子中,需要的年份是从1970年到现在的,所以循环遍历现在到1970年这个间隔数,并且每次循环都用当前年份减去循环变量。供新手参考。