<select onchange="displaySubmenu(this.value)">
<option value="none">请选择</option>
<option value="1">年</option>
<option value="1,2">半年</option>
<option value="1,3">季度</option>
<option value="1,4">月</option>
</select>
<select id="submenu_1" name="year" style="display:none"></select>
<select id="submenu_2" name="semiyear" style="display:none"></select>
<select id="submenu_3" name="quarter" style="display:none"></select>
<select id="submenu_4" name="month" style="display:none"></select>
<script>
function hideAll(){
for(i=1;i<5;i++){
var select = document.getElementById("submenu_"+i);
while(select.options.length>0){
select.options.remove(0);
}
select.style.display = "none";
}
}function initSelect(index){
var select = document.getElementById("submenu_"+index);
var now = new Date();
var currentYear = now.getYear();
var month = now.getMonth();
switch(index){
case 1:
for(i=-5;i<=5;i++){
var value = currentYear+i;
var item = new Option(value,value);
if(i==0){
item.selected = true;
}
select.options.add(item);
}
select.style.display = "inline";
break;
case 2:
var semiyears = new Array("上半年","下半年");
for(i=0;i<2;i++){
var item = new Option(semiyears[i],i+1);
if(i==0 && month<6 || i==1 && month>5){
item.selected = true;
}
select.add(item);
}
select.style.display = "inline";
break;
case 3:
var quarters = new Array("一季度","二季度","三季度","四季度");
for(i=0;i<4;i++){
var item = new Option(quarters[i],i+1);
if(i==0 && month<3 || i==1 && month>2 && month< 6 || i==2 && month>5 && month <9 || i==3 && month>8 && month<12){
item.selected = true;
}
select.add(item);
}
select.style.display = "inline";
break;
case 4:
var months = new Array("一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月");
for(i=0;i<12;i++){
var item = new Option(months[i],i+1);
if(i==month){
item.selected = true;
}
select.add(item);
}
select.style.display = "inline";
break;
default:
break;
}
}function displaySubmenu(command){
hideAll();
if(command != "none"){
var commands = command.split(",");
for(l=0;l<commands.length;l++){
initSelect(parseInt(commands[l]));
}
}
}
</script>
<option value="none">请选择</option>
<option value="1">年</option>
<option value="1,2">半年</option>
<option value="1,3">季度</option>
<option value="1,4">月</option>
</select>
<select id="submenu_1" name="year" style="display:none"></select>
<select id="submenu_2" name="semiyear" style="display:none"></select>
<select id="submenu_3" name="quarter" style="display:none"></select>
<select id="submenu_4" name="month" style="display:none"></select>
<script>
function hideAll(){
for(i=1;i<5;i++){
var select = document.getElementById("submenu_"+i);
while(select.options.length>0){
select.options.remove(0);
}
select.style.display = "none";
}
}function initSelect(index){
var select = document.getElementById("submenu_"+index);
var now = new Date();
var currentYear = now.getYear();
var month = now.getMonth();
switch(index){
case 1:
for(i=-5;i<=5;i++){
var value = currentYear+i;
var item = new Option(value,value);
if(i==0){
item.selected = true;
}
select.options.add(item);
}
select.style.display = "inline";
break;
case 2:
var semiyears = new Array("上半年","下半年");
for(i=0;i<2;i++){
var item = new Option(semiyears[i],i+1);
if(i==0 && month<6 || i==1 && month>5){
item.selected = true;
}
select.add(item);
}
select.style.display = "inline";
break;
case 3:
var quarters = new Array("一季度","二季度","三季度","四季度");
for(i=0;i<4;i++){
var item = new Option(quarters[i],i+1);
if(i==0 && month<3 || i==1 && month>2 && month< 6 || i==2 && month>5 && month <9 || i==3 && month>8 && month<12){
item.selected = true;
}
select.add(item);
}
select.style.display = "inline";
break;
case 4:
var months = new Array("一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月");
for(i=0;i<12;i++){
var item = new Option(months[i],i+1);
if(i==month){
item.selected = true;
}
select.add(item);
}
select.style.display = "inline";
break;
default:
break;
}
}function displaySubmenu(command){
hideAll();
if(command != "none"){
var commands = command.split(",");
for(l=0;l<commands.length;l++){
initSelect(parseInt(commands[l]));
}
}
}
</script>
解决方案 »
- 基于新浪微博的web开发
- 在Firefox下报错,但在IE下正常
- 控制DIV显示与隐藏
- 如何移除指定id的内容?
- 层次、onMouseOver、onmouseout的问题
- 关于动态添加元素属性的问题(在线等...)
- 有没有人写过类似MSN中贴表情图的过程,在点击表情安钮的时候向上弹出一个(显示表情)层!在框架中怎么实现啊!经典的问题,!!!!??
- dso.XMLDocument.save()的问题(在线等待,即时给分)
- 提取記錄集后,鼠標移動在記錄集上,那一筆就變顏色,這顏色是如何控制的
- 请问如何使层出现滚动条呢?
- JavaScript如何实现一个.TXT文件的隐匿上传?
- 高手帮忙写下asp涵数啊!先谢谢了!
<select onchange="displaySubmenu(this.value)" style="float:left">
<option value="none">请选择</option>
<option value="1">年</option>
<option value="1,2">半年</option>
<option value="1,3">季度</option>
<option value="1,4">月</option>
</select>
<select id="submenu_1" name="year" style="display:none;float:left"></select>
<select id="submenu_2" name="semiyear" style="display:none;float:left"></select>
<select id="submenu_3" name="quarter" style="display:none;float:left"></select>
<select id="submenu_4" name="month" style="display:none;float:left"></select>
<script>
function hideAll(){
for(i=1;i<5;i++){
var select = document.getElementById("submenu_"+i);
while(select.options.length>0){
select.options.remove(0);
}
select.style.display = "none";
}
}function initSelect(index){
var select = document.getElementById("submenu_"+index);
var now = new Date();
var currentYear = now.getYear();
var month = now.getMonth();
switch(index){
case 1:
for(i=-5;i<=5;i++){
var value = currentYear+i;
var item = new Option(value,value);
select.options.add(item);
}
select.selectedIndex = 5;
select.style.display = "block";
break;
case 2:
var semiyears = new Array("上半年","下半年");
for(i=0;i<2;i++){
var item = new Option(semiyears[i],i+1);
select.add(item);
}
select.selectedIndex = Math.floor(month/6);
select.style.display = "block";
break;
case 3:
var quarters = new Array("一季度","二季度","三季度","四季度");
for(i=0;i<4;i++){
var item = new Option(quarters[i],i+1);
select.add(item);
}
select.selectedIndex = Math.floor(month/3);
select.style.display = "block";
break;
case 4:
var months = new Array("一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月");
for(i=0;i<12;i++){
var item = new Option(months[i],i+1);
select.add(item);
}
select.selectedIndex = month;
select.style.display = "block";
break;
default:
break;
}
}function displaySubmenu(command){
hideAll();
if(command != "none"){
var commands = command.split(",");
for(l=0;l<commands.length;l++){
initSelect(parseInt(commands[l]));
}
}
}
</script>
</body>
要的就是这个效果啊,谢谢老兄啦,马上散分!不知道我应该如何去取出select里面的值呢?