<script type= "Text/javascript" > $ (document). Ready (function () {$ ("select"). each (function (key, VA L) {sortoption ($ (this)); }); }); function Sortoption (SLC) {var i = 0; var ops = ""; var outdata = []; Slc.find ("option"). each (function (key, Val) {Outdata[i] = {Id:parseint (val). Val ()), Option: $ (val) [0].outerhtml}; i++; }); var jdata = Outdata.sortobjectwith ("ID", "ASC", "fix"); $.each (Jdata, function (key, item) {OPS + = Item. Option; }); Slc.html (""); slc.html (OPS); } Array.prototype.sortObjectWith = function (key, T, fix) {if (!this.length) {return this;} t = = = = = = ' desc '? ' desc ': ' ASC '; fix = Object.prototype.toString.apply (fix) = = = ' [Object Function] '? Fix:function (key) {return key;}; Switch (Object.prototype.toString.apply (Fix.call ({}, This[0][key])) {case ' [Object number] ': Return This.sort (function (A, b) {return t = = = ' ASC '? (Fix.call ({}, A[key])-Fix.call ({}, B[key]): (Fix.call ({}, B[key])-Fix.call ({}, A[key])); }); Case ' [Object String] ': Return This.sort (function (A, b) {return t = = = ' ASC '? Fix.call ({}, A[key]). Lo Calecompare (Fix.call ({}, B[key])): Fix.call ({}, B[key]). Localecompare (Fix.call ({}, A[key])); }); Default:return this; }} </script>
JQuery Option Sort