如题目,我是新手,请帮忙解决一下。
<select id=year onchange=toDate()>
<script>
for(i=1970;i<=2510;i++)
{
var i_day=new Date()
var i_year=i_day.getFullYear()
document.write("<option");
//我想在此处加一下判断,当i = i_year时,document.write("selected=\"selected\"")
document.write(">");
document.write(i);
document.write("</option>");
}
</script>
</select>
<select id=year onchange=toDate()>
<script>
for(i=1970;i<=2510;i++)
{
var i_day=new Date()
var i_year=i_day.getFullYear()
document.write("<option");
//我想在此处加一下判断,当i = i_year时,document.write("selected=\"selected\"")
document.write(">");
document.write(i);
document.write("</option>");
}
</script>
</select>
//我想在此处加一下判断,当i = i_year时,document.write("selected=\"selected\"")
if(parseInt(i) == parseInt(i_year)) {
document.write("selected=\"selected\"");
}
document.write(">");
另一种方式:var str = "";//临时变量
str += "<option";if(parseInt(i) == parseInt(i_year)){
str += "selected=\"selected\"";
}
str += "></option>";
document.write(str);
可能是你没有对i进行声明造成的。
在for循环之前加一句: var i;
少了一个空格,document.write(" selected=\"selected\"");
这样就对了,谢谢了,我已经用上了。
var i_day=new Date()
var i_year=i_day.getFullYear()
这两句写在for外面。不用每次循环都声明。