js操作html中select和opthion

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    
    <title>lianjiao</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<meta http-equiv="content-type" content="text/html;charset=gbk" />
	<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js" type="text/javascript"></script> 

	
  </head>
  
    
  <body>  
  <form id="form1" name="form1" method="post" action="">
    <table width="609" height="455" align="center" >
      <tr>
      	<td colspan="6" align="center"> 课表(总共有需要排课的班级:<span id="class_count" style="color:red">8</span>个) </td>
      </tr>
      <tr>
      	<td colspan="6"><input value="课表编号:"  type="hidden" name=""  value="">    课表名称:<input  type="text" name=""  value=""></td>
      </tr>
      <tr >
        <td width="64" valign="center" ><p > </p></td>
        <td width="103" valign="center" ><p >周一 </p></td>
        <td width="103" valign="center" ><p >周二 </p></td>
        <td width="104" valign="center" ><p >周三 </p></td>
        <td width="104" valign="center" ><p >周四 </p></td>
        <td width="103" valign="center" ><p >周五 </p></td>
      </tr>
      <tr >
        <td width="64"  valign="center" ><p >1—2 </p></td>
        <td width="103" valign="center" ><p id="11">,呃呃呃呃呃,eeee</p></td>
        <td width="103" valign="center" ><p id="12">,英语班,新加课程,呃呃呃呃呃,土木02,CAD班</p></td>
        <td width="104" valign="center" ><p id="13">,英语班,新加课程,呃呃呃呃呃,eeee,土木02,CAD班</p></td>
        <td width="104" valign="center" ><p id="14">,英语班,新加课程,呃呃呃呃呃,eeee,土木02,CAD班</p></td>
        <td width="103" valign="center" ><p id="15">,英语班,新加课程,呃呃呃呃呃,eeee,土木02,CAD班</p></td>
      </tr>
      <tr >
        <td width="64" valign="center" ><p >3—4 </p></td>
        <td width="103" valign="center" ><p id="21">,呃呃呃呃呃,eeee,fefde,土木02,建工01,CAD班</p></td>
        <td width="103" valign="center" ><p id="22">,英语班,新加课程,eeee,fefde,建工01</p></td>
        <td width="104" valign="center" ><p id="23">,英语班,新加课程,eeee,fefde,建工01,CAD班</p></td>
        <td width="104" valign="center" ><p id="24">,英语班,新加课程,呃呃呃呃呃,eeee,fefde,建工01,CAD班</p></td>
        <td width="103" valign="center" ><p id="25">,英语班,新加课程,呃呃呃呃呃,eeee,fefde,土木02,建工01,CAD班</p></td>
      </tr>
      <tr >
        <td width="64" valign="center" ><p >5—6 </p></td>
        <td width="103" valign="center" ><p id="31">,呃呃呃呃呃,eeee,建工01,CAD班</p></td>
        <td width="103" valign="center" ><p id="32">,英语班,新加课程,呃呃呃呃呃,eeee,土木02,建工01,CAD班</p></td>
        <td width="104" valign="center" ><p id="33">,英语班,新加课程,呃呃呃呃呃,eeee,fefde,建工01</p></td>
        <td width="104" valign="center" ><p id="34">,英语班,新加课程,eeee,土木02,建工01,CAD班</p></td>
        <td width="103" valign="center" ><p id="35">,英语班,新加课程,呃呃呃呃呃,eeee,建工01,CAD班</p></td>
      </tr>
      <tr >
        <td width="64" valign="center" ><p >7—8 </p></td>
        <td width="103" valign="center" ><p id="41">,英语班,呃呃呃呃呃,eeee,土木02,建工01,CAD班</p></td>
        <td width="103" valign="center" ><p id="42">,新加课程,呃呃呃呃呃,eeee,土木02,建工01,CAD班</p></td>
        <td width="104" valign="center" ><p id="43">,新加课程,呃呃呃呃呃,eeee,fefde,土木02,建工01,CAD班</p></td>
        <td width="104" valign="center" ><p id="44">,新加课程,呃呃呃呃呃,eeee,土木02,建工01</p></td>
        <td width="103" valign="center" ><p id="45">,新加课程,呃呃呃呃呃,eeee,土木02,建工01,CAD班</p></td>
      </tr>
      <tr >
        <td width="64" valign="center" ><p >7—8 </p></td>
        <td width="103" valign="center" ><p id="51">,英语班,呃呃呃呃呃,eeee,fefde,土木02,建工01,CAD班</p></td>
        <td width="103" valign="center" ><p id="52">,新加课程,呃呃呃呃呃,eeee,fefde,土木02,建工01,CAD班</p></td>
        <td width="104" valign="center" ><p id="53">,新加课程,呃呃呃呃呃,eeee,fefde,土木02,建工01,CAD班</p></td>
        <td width="104" valign="center" ><p id="54">,新加课程,呃呃呃呃呃,eeee,fefde,土木02,建工01,CAD班</p></td>
        <td width="103" valign="center" ><p id="55">,新加课程,呃呃呃呃呃,eeee,fefde,土木02,建工01,CAD班</p></td>
      </tr>
      	<td colspan="6" align="center"><input type="button" οnclick="save()" value="保存"></input></td>
    </table>    
  </form>
 
  
   <script type="text/javascript">
  
   	var img_no="";
	var cache_class =  new Array();//伪二维数组
	var cache_curr="";
	var class_count = 0;
   	var list_class =  new Array();
	class_count = $("#class_count").html();
	for(i=1;i<=5;i++){
		for(j=1;j<=5;j++){
		cache_class[i*10+j]="";//初始化缓存空间
		var data_str;
		var datamb =  new Array();
		var data;
		data_str = $("#"+""+i+j).html()
		if(data_str==null){
			datamb[0]=""; datamb[1]="asd"; 
		}else{
			datamb = data_str.split(","); 
		}
		
   		data = "<select id='se"+i+j+"' οnclick='setcurr(this)' οnchange='modflyc(this,"+i+","+j+")' width='100px'>";
   		if(datamb.length<1){
   			$("#"+""+i+j).html(data);
   		}else{
   		
	   		for(ii=0;ii<datamb.length;ii++){
	   			data +="<option>"+datamb[ii]+"</option>";
	   		}
	   		data +="</select>"
			
				$("#"+""+i+j).html(data);
				
			}
		}
	}
	/**
	 保存方法
	*/
	function save(){
	var str="";
	var course=new Array(); 
	var count=0;
	var have=0;
	var flg=0;
	var ii=0;jj=0;
		for(i=1;i<=5;i++){
			for(j=1;j<=5;j++){
				str += $("#"+""+i+j).find("#se").val();
				str+="  ";
				course[count++]=$("#"+"se"+i+j).val();
			}
		}
		alert(1);
		for(ii=0;ii<25;ii++){
			for(jj=0;jj<25;jj++){
				if(jj!=ii){
					if(course[ii].length>1){
						if(course[ii]==course[jj]){
							if(flg==0){
							alert(course[jj]+" 排课冲突,保存失败");
							flg=1;
							}
						}
						
					}
				}
			}	
			if(course[ii].length>1)	have++;		
		}
		if(flg==0){
			if(have==$("#type").val()){
				if (confirm("恭喜,排课成功,总共有 "+$('#type').val()+" 个班级,排了 "+have+" 班级! 确定保存并发布排课结果吗?"))
				 return publish();
				else
				 return false;
			}else{
				if (confirm("排课异常,总共有 "+$('#type').val()+" 个班级,排了 "+have+" 班级! 确定保存并发布排课结果吗?"))
				 return publish();
				else
				 return false;
			}
		}
		
		
	}
	/**
	  保存前获取每个选项的值
	*/
	function publish(){
		
		for(i=1;i<=5;i++){
			for(j=1;j<=5;j++){
				 $("#"+"c"+i+j).val($("#"+"se"+i+j).val());
			}
		}		
	$('#type').val("publish");
	$('#form1').submit();
		
	}
	/**
	  每个选项被单击选中的事件
	*/
	function setcurr(obj){
		cache_curr = $(obj).val();
	}
	/**
	  恢复删除的元素
	*/
	function undel(class_name){
	var item =  new Array();
	var itemdata="";
		for(i=1;i<=5;i++){
			for(j=1;j<=5;j++){
				itemdata = cache_class[i*10+j];	
				cache_class[i*10+j]="";//清空缓存,修改后重新组装
				item = 	itemdata.split(";");
				for(ii=0;ii<item.length;ii++){
					if(item[ii]==class_name){//追加option元素,并且删除缓存中的元素
						//只负责追加
						if(item[ii]!="")
						$("#se"+i+""+j).append("<option>"+class_name+"</option>");

					}else{
						//只负责删除(删除即 去出item[ii]==class_name)
						if(item[ii]!="")
						cache_class[i*10+j]+=";"+item[ii];
					}					
				}
			}		
		}
	}
	/**
	  修改剩余未排课班级个数
	*/
	function modflyclasscount(){
		var have=0;
			for(i=1;i<=5;i++){
				for(j=1;j<=5;j++){
					if($("#se"+i+""+j).val().length>1)
					have++;
				}
			}
		if(class_count==have){
			have=0+"";
		}else{
			have = class_count-have;
		}		
		$("#class_count").html(have);
		
	}
	/**
	  每个选项值更改的触发事件
	*/
	function modflyc(obj,posi,posj){
		modflyclasscount();
		var class_name = $(obj).val();		
		if(class_name==""){
			if(cache_curr!="")
				if(class_name!=cache_curr){
					//alert(cache_curr);					
					//从缓存中取得元素重新添加至原来位置
					undel(cache_curr);
				}
		}else{
		//alert(class_name);
		if(class_name!=cache_curr)
			undel(cache_curr);
				for(i=1;i<=5;i++){
					for(j=1;j<=5;j++){
						if(i==posi && j==posj){
							//它自己
						}else{
							var temp = $("#se"+i+""+j+" option[text='"+class_name+"']").val();
							//alert(temp+"   "+class_name);
							if(temp==class_name || temp==""){//ie 下无法获取temp的值,它只有undefined和空字符这两种结果
								cache_class[i*10+j]+=";"+class_name;//把欲删除的值,按照其位置缓存起来,并以分号分隔
								$("#se"+i+""+j+" option[text='"+class_name+"']").remove();
								//缓存删除的元素(ij,class_name)
								//alert('shan chu yuan su ');
							}else{
								//alert(i+""+j);
								
							}


							
						}						
						

					}
				}
			
		}
		
		

	}
	
	
   </script>
  </body>
</html>

另外引用了jquery-1.2.6.js,这是一个jquery操作select的合集,主要实现的功能,就是当在一个select中选择选项后就,在其他select的选项中删除其元素。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值