2016-08-04 184 views
0

在IE中打開this link,以準確理解我將描述並尋求黑客行爲。將所選選項設置爲選擇框中的第一個選項

我有以下選擇列表:

<select> 
    <option value="volvo">Volvo</option> 
    <option value="saab">Saab</option> 
    <option value="mercedes">Mercedes</option> 
    <option value="audi">Audi</option> 
</select> 

當我使這個在IE,下拉行爲的這種變化相比,由於其中一些選項在上方擠壓其他瀏覽器而其他下向上推(根據所選的選項)

由於這是IE默認行爲選擇框,我所尋求的是,選項應該得到重新訂購,即用戶選擇的選項應作爲第一選項。檢查下面的圖片:

enter image description here

沒有人對此有一個變通?

而且如果有誰知道一個黑客更改此默認IE的行爲,這將是巨大的瞭解和學習

這是正確的方式?

<!DOCTYPE html> 
<html> 
<head> 
<script> 
$(document).ready(function(){ 
var choose = $("#choose").bind('change',function(){alert("hello"); 
choose.find('option:selected').prependTo(choose); 
}); 
}); 
</script> 
<head> 
<body> 

<select id="choose"> 
<option value="choose">choose</option> 
<option value="saab">Saab</option> 
<option value="opel">Opel</option> 
<option value="audi">Audi</option> 
</select> 

</body> 
</html> 
+0

你使用jQuery嗎? –

+0

到目前爲止,我還沒有,但如果有一種方法來處理這個使用jQuery,我可以嘗試。 –

回答

1

下面是在Jquery的工作的方法,包括:

HTML

<select id = "choose"> 
    <option value="null" name="volvo">Volvo</option> 
    <option value="1" name="saab">Saab</option> 
    <option value="2" name="mercedes">Mercedes</option> 
    <option value="3" name="audi">Audi</option> 
</select> 

jQuery的

var choose = $("#choose").bind('change',function(){ 
    choose.find('option:selected').prependTo(choose); 
}); 

Source

完整的代碼

<!DOCTYPE html> 
 
<html> 
 

 
<head> 
 
    <script src="https://code.jquery.com/jquery-3.1.0.min.js" integrity="sha256-cCueBR6CsyA4/9szpPfrX3s49M9vUU5BgtiJj06wt/s=" crossorigin="anonymous"></script> 
 
    <script> 
 
    $(document).ready(function() { 
 
     var choose = $("#choose").bind('change', function() { 
 
     alert("hello"); 
 
     choose.find('option:selected').prependTo(choose); 
 
     }); 
 
    }); 
 
    </script> 
 

 
    <head> 
 

 
    <body> 
 

 
     <select id="choose"> 
 
     <option value="choose">choose</option> 
 
     <option value="saab">Saab</option> 
 
     <option value="opel">Opel</option> 
 
     <option value="audi">Audi</option> 
 
     </select> 
 

 
    </body> 
 

 
</html>

+0

這有幫助。感謝您的快速回復 –

+0

這是否適用於IE 11?雖然功能非常好。我無法在IE 11 –

+0

中使用這個工作我在IE上啓用了JS。不確定其他設置可能會阻止此操作。你能否請檢查我的更新代碼。我在代碼中遺漏了什麼? –

0
<html> 
<head> 
    <script src="jquery-3.1.0.js"></script> 
    <script> 
     $(function() { 
      var selectedItem = $("#selectItem").bind('change', function() { 
       selectedItem.find('option:selected').prependTo(selectedItem); 
      }); 
     }); 
    </script> 
    <head> 
     <body> 

      <select id="selectItem"> 
      <option value="1">one</option> 
      <option value="2">two</option> 
      <option value="3">three</option> 
      <option value="4">four</option> 
      </select> 

     </body> 
</html> 

click to see output screenclick to see output screen

謝謝... :)

相關問題