本文目录
在html里,如何在select下拉框里加个checkbox
你好,html自带的select元素,是不支持option中带checkbox的,所有如果想实现这样的特殊select,必须自己编写一个功能类似select的下拉框
我实现了一个简单的,你看下就会了,我用的箭头代表的三角,可以直接运行
《html》
《head》
《style》
ul{list-style-type:none;}
li{border:solid 1px;width:100px;}
.liShow{display:block;background:while;}
.liHide{display:none;background:blue;}
《/style》
《script》
var nextState=1;
function change(obj){
var liArray=document.getElementsByTagName("LI");
var i=1;
var length=liArray.length;
switch(nextState){
case 1:
obj.innerHTML="当前选择↑";
for(;i《length;i++){
liArray.className="liShow";
}
nextState=0;
break;
case 0:
obj.innerHTML="当前选择↓";
for(;i《length;i++){
liArray.className="liHide";
}
nextState=1;
}
}
《/script》
《/head》
《body》
《ul id="myUl"》
《li class="liMenu" onclick="change(this);"》当前选择↓《/li》
《li value="1" class="liHide"》《input type="checkbox"》1《/li》
《li value="1" class="liHide"》《input type="checkbox"》2《/li》
《/ul》
《/body》
《/html》
HTML
《HTML》《HEAD》《TITLE》显示当月月历表《/TITLE》《/HEAD》《BODY》《SCRIPT language="JavaScript"》《!--var maxdays;var today=new Date();thismonth=today.getMonth()+1; thisyear=today.getYear(); thisday=today.getDate();switch(thismonth){case 4:case 6:case 9:case 11:maxdays=30;break;case 2: if((thisyear%400==0)||(thisyear%4==0&&thisyear%100!=0)) maxdays=29;else maxdays=28;break;default:maxdays=31;break;} if(thismonth《=9) thismonth="0"+thismonth;document.write("《form》");document.write("《select name=dates size=1》");for(var theday=1;theday《=maxdays;theday++) {if(theday《=9){theday="0"+theday;}document.write("《option ");if(theday==thisday) document.write("selected");document.write("》");document.write(thismonth+"-"+theday+"-"+thisyear);}document.write("《/select》《/form》");//--》《/SCRIPT》《/BODY》《/HTML》 少了个空格,在《option那儿