在下拉框中动态添加不可用的项

<HTML>
<HEAD>
<TITLE></TITLE>
<style text="text/css">
 optgroup { background-color:#eee; color:444; }
</style>
</HEAD>

 <BODY>

   <br>
  <select id="sel1" name="sel1">
  <option value="">option1</option>
  <optgroup label="disable1"></optgroup>
  <option value="">option2</option>
  <option value="">option3</option>
  </select> 

  <br><br><br>

  <INPUT TYPE="button" value="AddElement" οnclick="AddOption();">

  <INPUT TYPE="button" value="AddElement2" οnclick="AddOptGroup();">

  <INPUT TYPE="button" value="ClearOption" οnclick="ClearOptions();">

 </BODY>
</HTML>
<SCRIPT LANGUAGE="JavaScript">
<!--
 function AddOption()
 {
  var sel = document.getElementById("sel1");
  var opt = document.createElement("option");
  opt.innerText = "newopt";  //用insertAdjacentElement时必须设置该属性(设置该属性后不能用options.add添加,报错)
  opt.text = "optionX";   //设置这个属性用insertAdjacentElement方法会添加一个空白项,该属性可以不用
  opt.value = "X";

  sel.insertAdjacentElement("beforeEnd",opt);
  //sel.options.add(opt);   //用这个方法新加的项放到上一个optgroup下
 }
 function AddOptGroup()
 {
  var sel = document.getElementById("sel1");
  var optg = document.createElement("optgroup");
  optg.label = "disableX";
  sel.appendChild(optg);
  //sel.add(optg);    //必须用appendChild方法,否则相同的optgroup只能添加一个
 }

 function ClearOptions(obj)
 {
  var sel = document.getElementById("sel1");

  var gl = sel.children.length - 1;
  for(var i=gl;i >= 0;i--)
  {
   sel.removeChild(sel.children(i)); //必须用removeChild方法删除,否则optgroup项删除不掉
  }
 }
//-->
</SCRIPT> 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值