• select options 排序(保持option 对象完整性)


    <html>
    	<head></head>
    	
    	<script>
    		function addOption(object, object2) {
    			each(object2, function(o, index) {
    				object.options[index] = o;
    			})
    		}
    		
    		function sortlist(sortName,isDesc) {
    			var what = document.getElementById(sortName);
    		
    			this._options = map(what.options, function(o) {
    				return o;
    			});
    		
    			this._options.sort( function(a, b) {
    		
    				if (a.text > b.text) {
    					return isDesc == true ? 1 : -1;
    				} else {
    					return isDesc == true ? -1 : 1;
    				}
    		
    			});
    		
    			what.options.length = 0;// clear current options
    		
    			addOption(what, this._options);
    		}
    		
    		
    		
    		
    		function map(object, callback, thisp) {
    			var ret = [];
    			each.call(thisp, object, function() {
    				ret.push(callback.apply(thisp, arguments));
    			});
    			return ret;
    		}
    		
    		function each(object, callback) {
    			if (undefined === object.length) {
    				for ( var name in object) {
    					if (false === callback(object[name], name, object))
    						break;
    				}
    			} else {
    				for ( var i = 0, len = object.length; i < len; i++) {
    					if (i in object) {
    						if (false === callback(object[i], i, object))
    							break;
    					}
    				}
    			}
    		}
    
    		var sOrder = true;
    		function sort(){		
    			
    			if(sOrder){
    				sOrder	= false;
    			}else{
    				sOrder	= true;
    			}
    			
    			sortlist("select1",sOrder);
    			
    		}
    	</script>
    	
    	<body>
    		
    		<select id="select1"  size=6>
    			<option>111</option>
    			<option>333</option>
    			<option>444</option>
    			<option>222</option>
    			<option>333</option>
    		</select>
    		
    		<input type=button value="sort" onclick="sort();">
    </html>
    
    

  • 相关阅读:
    团队作业(七)
    8848小分队:个人最终总结
    团队作业(四)
    参与团队编程的讨论郝一的角度
    团队作业(五)
    团队作业(三)
    团队作业(二)
    团队题目的确立与小组分工
    xJuujMbXeB
    团队作业汇报
  • 原文地址:https://www.cnblogs.com/wblade/p/1682417.html
Copyright © 2020-2023  润新知