2017-04-05 23 views
0

sry for my english。しかし私はあなたが私の問題が何であるかを理解できることを願っています 私はリストからAからZまでのすべての文字を持つドロップダウンメニューを持っています。私は多くの名前を持っています。ドロップダウンメニューで文字を選択すると、リスト内の同じ文字が選択されます。これまでのところ動作しますが、選択した文字をリストの先頭に移動するにはどうすればよいですか?javascript。リストの一番上にある選択項目を移動する方法

<div align="center"><html> 
 
<head> 
 
<script language="JavaScript"> 
 
function Eingabe(Wert) 
 
{ 
 
    for(i = 0; i < document.getElementById('Names').options.length; i++) 
 
    { 
 
     if(Wert.substr(0, Wert.length).toLowerCase() == document.getElementById('Names').options[i].value.substr(0, Wert.length).toLowerCase() && Wert.length != 0) 
 
     { 
 
      document.getElementById('Names').options[i].selected = true; 
 
      break; 
 
     } 
 
    } 
 
} 
 
</script> 
 
</head> 
 
<body> 
 
\t \t <label>Select letter: 
 
\t \t \t <select name="Letters"onClick="Eingabe(this.value);" type="text"><br> 
 
\t \t \t \t <option>---Select letter---</option> 
 
\t \t \t \t <option>A</option> 
 
\t \t \t \t <option>B</option> 
 
\t \t \t \t <option>C</option> 
 
\t \t \t \t <option>D</option> 
 
\t \t \t \t ... 
 
\t \t \t </select> 
 
\t \t </label> 
 
\t \t <br> 
 
\t \t <br> 
 
<select id="Names" size="18"> 
 
<option value="A:">A:</option> 
 
    <option value="Adena">&nbsp;-Adena</option> 
 
<option value="Adeodata">&nbsp;-Adeodata</option> 
 
<option value="Adeodato">&nbsp;-Adeodato</option> 
 
<option value="Adeodatus">&nbsp;-Adeodatus</option> 
 
<option value="Aderito">&nbsp;-Aderito</option> 
 
<option value="Adhelm">&nbsp;-Adhelm</option> 
 
<option value="Adil">&nbsp;-Adil</option> 
 
<option value="Adina">&nbsp;-Adina</option> 
 
<option value="Adine">&nbsp;-Adine</option> 
 
<option value="Adis">&nbsp;-Adis</option> 
 
<option value="Adlai">&nbsp;-Adlai</option> 
 
<option value="Admir">&nbsp;-Admir</option> 
 
<option value="Adnan">&nbsp;-Adnan</option> 
 
<option value="Adolar">&nbsp;-Adolar</option> 
 
<option value="Adolf">&nbsp;-Adolf</option> 
 
<option value="Adolfa">&nbsp;-Adolfa</option> 
 
<option value="Adolfine">&nbsp;-Adolfine</option> 
 
<option value="Adolfo">&nbsp;-Adolfo</option> 
 
<option value="Adolph">&nbsp;-Adolph</option> 
 
<option value="Adolpha">&nbsp;-Adolpha</option> 
 
<option value="Adolphe">&nbsp;-Adolphe</option> 
 
<option value="Adolphus">&nbsp;-Adolphus</option> 
 
<option value="Adone">&nbsp;-Adone</option> 
 
<option value="Adonia">&nbsp;-Adonia</option> 
 
<option value="Adonis">&nbsp;-Adonis</option> 
 
<option value="Adora">&nbsp;-Adora</option> 
 
<option value="Adoración">&nbsp;-Adoración</option> 
 
<option value="Adria">&nbsp;-Adria</option> 
 
<option value="Adriaan">&nbsp;-Adriaan</option> 
 
<option value="Adriaen">&nbsp;-Adriaen</option> 
 
<option value="Adrián">&nbsp;-Adrián</option> 
 
<option value="Adriana">&nbsp;-Adriana</option> 
 
<option value="Adriane">&nbsp;-Adriane</option> 
 
<option value="Adrianna">&nbsp;-Adrianna</option> 
 
<option value="Adrianne">&nbsp;-Adrianne</option> 
 
<option value="Adriano">&nbsp;-Adriano</option> 
 
<option value="B:">B:</option> 
 
<option value="Bartel">&nbsp;-Bartel</option> 
 
<option value="Barthold">&nbsp;-Barthold</option> 
 
<option value="Bartholomäa">&nbsp;-Bartholomäa</option> 
 
<option value="Bartholomaios">&nbsp;-Bartholomaios</option> 
 
<option value="Bartholomäus">&nbsp;-Bartholomäus</option> 
 
<option value="Bartholomew">&nbsp;-Bartholomew</option> 
 
<option value="Bartolmai">&nbsp;-Bartolmai</option> 
 
<option value="Bartolo">&nbsp;-Bartolo</option> 
 
<option value="Bartolomé">&nbsp;-Bartolomé</option> 
 
<option value="Bartolomea">&nbsp;-Bartolomea</option> 
 
<option value="Bartolomeo">&nbsp;-Bartolomeo</option> 
 
<option value="Bartosz">&nbsp;-Bartosz</option> 
 
<option value="Bas">&nbsp;-Bas</option> 
 
<option value="Bashkim">&nbsp;-Bashkim</option> 
 
<option value="Basia">&nbsp;-Basia</option> 
 
<option value="Basil">&nbsp;-Basil</option> 
 
<option value="Basile">&nbsp;-Basile</option> 
 
<option value="Basileios">&nbsp;-Basileios</option> 
 
<option value="Basilia">&nbsp;-Basilia</option> 
 
<option value="Basilisa">&nbsp;-Basilisa</option> 
 
<option value="Basilius">&nbsp;-Basilius</option> 
 
<option value="Basti">&nbsp;-Basti</option> 
 
<option value="Bastiaan">&nbsp;-Bastiaan</option> 
 
<option value="Bastian">&nbsp;-Bastian</option> 
 
<option value="Bastiano">&nbsp;-Bastiano</option> 
 
<option value="Bastien">&nbsp;-Bastien</option> 
 
<option value="Bathia">&nbsp;-Bathia</option> 
 

 
    
 
</select> 
 
</body> 
 
</html> 
 
</div>

答えて

0

使用Element#scrollIntoView。関数Eingabebreak文の直前に以下の行を追加してください。

document.getElementById('Names').options[i].scrollIntoView(); 

EDIT:またonchangeonClickを変更します。以下に追加された作業スニペットを参照してください。

function Eingabe(Wert) 
 
{ 
 
    for(i = 0; i < document.getElementById('Names').options.length; i++) 
 
    { 
 
     if(Wert.substr(0, Wert.length).toLowerCase() == document.getElementById('Names').options[i].value.substr(0, Wert.length).toLowerCase() && Wert.length != 0) 
 
     { 
 
      document.getElementById('Names').options[i].selected = true; 
 
     document.getElementById('Names').options[i].scrollIntoView(); 
 
      break; 
 
     } 
 
    } 
 
}
<label>Select letter: 
 
\t \t \t <select name="Letters" onchange="Eingabe(this.value);" type="text"><br> 
 
\t \t \t \t <option>---Select letter---</option> 
 
\t \t \t \t <option>A</option> 
 
\t \t \t \t <option>B</option> 
 
\t \t \t \t <option>C</option> 
 
\t \t \t \t <option>D</option> 
 
\t \t \t </select> 
 
\t \t </label> 
 
\t \t <br> 
 
\t \t <br> 
 
<select id="Names" size="18"> 
 
<option value="A:">A:</option> 
 
    <option value="Adena">&nbsp;-Adena</option> 
 
<option value="Adeodata">&nbsp;-Adeodata</option> 
 
<option value="Adeodato">&nbsp;-Adeodato</option> 
 
<option value="Adeodatus">&nbsp;-Adeodatus</option> 
 
<option value="Aderito">&nbsp;-Aderito</option> 
 
<option value="Adhelm">&nbsp;-Adhelm</option> 
 
<option value="Adil">&nbsp;-Adil</option> 
 
<option value="Adina">&nbsp;-Adina</option> 
 
<option value="Adine">&nbsp;-Adine</option> 
 
<option value="Adis">&nbsp;-Adis</option> 
 
<option value="Adlai">&nbsp;-Adlai</option> 
 
<option value="Admir">&nbsp;-Admir</option> 
 
<option value="Adnan">&nbsp;-Adnan</option> 
 
<option value="Adolar">&nbsp;-Adolar</option> 
 
<option value="Adolf">&nbsp;-Adolf</option> 
 
<option value="Adolfa">&nbsp;-Adolfa</option> 
 
<option value="Adolfine">&nbsp;-Adolfine</option> 
 
<option value="Adolfo">&nbsp;-Adolfo</option> 
 
<option value="Adolph">&nbsp;-Adolph</option> 
 
<option value="Adolpha">&nbsp;-Adolpha</option> 
 
<option value="Adolphe">&nbsp;-Adolphe</option> 
 
<option value="Adolphus">&nbsp;-Adolphus</option> 
 
<option value="Adone">&nbsp;-Adone</option> 
 
<option value="Adonia">&nbsp;-Adonia</option> 
 
<option value="Adonis">&nbsp;-Adonis</option> 
 
<option value="Adora">&nbsp;-Adora</option> 
 
<option value="Adoración">&nbsp;-Adoración</option> 
 
<option value="Adria">&nbsp;-Adria</option> 
 
<option value="Adriaan">&nbsp;-Adriaan</option> 
 
<option value="Adriaen">&nbsp;-Adriaen</option> 
 
<option value="Adrián">&nbsp;-Adrián</option> 
 
<option value="Adriana">&nbsp;-Adriana</option> 
 
<option value="Adriane">&nbsp;-Adriane</option> 
 
<option value="Adrianna">&nbsp;-Adrianna</option> 
 
<option value="Adrianne">&nbsp;-Adrianne</option> 
 
<option value="Adriano">&nbsp;-Adriano</option> 
 
<option value="B:">B:</option> 
 
<option value="Bartel">&nbsp;-Bartel</option> 
 
<option value="Barthold">&nbsp;-Barthold</option> 
 
<option value="Bartholomäa">&nbsp;-Bartholomäa</option> 
 
<option value="Bartholomaios">&nbsp;-Bartholomaios</option> 
 
<option value="Bartholomäus">&nbsp;-Bartholomäus</option> 
 
<option value="Bartholomew">&nbsp;-Bartholomew</option> 
 
<option value="Bartolmai">&nbsp;-Bartolmai</option> 
 
<option value="Bartolo">&nbsp;-Bartolo</option> 
 
<option value="Bartolomé">&nbsp;-Bartolomé</option> 
 
<option value="Bartolomea">&nbsp;-Bartolomea</option> 
 
<option value="Bartolomeo">&nbsp;-Bartolomeo</option> 
 
<option value="Bartosz">&nbsp;-Bartosz</option> 
 
<option value="Bas">&nbsp;-Bas</option> 
 
<option value="Bashkim">&nbsp;-Bashkim</option> 
 
<option value="Basia">&nbsp;-Basia</option> 
 
<option value="Basil">&nbsp;-Basil</option> 
 
<option value="Basile">&nbsp;-Basile</option> 
 
<option value="Basileios">&nbsp;-Basileios</option> 
 
<option value="Basilia">&nbsp;-Basilia</option> 
 
<option value="Basilisa">&nbsp;-Basilisa</option> 
 
<option value="Basilius">&nbsp;-Basilius</option> 
 
<option value="Basti">&nbsp;-Basti</option> 
 
<option value="Bastiaan">&nbsp;-Bastiaan</option> 
 
<option value="Bastian">&nbsp;-Bastian</option> 
 
<option value="Bastiano">&nbsp;-Bastiano</option> 
 
<option value="Bastien">&nbsp;-Bastien</option> 
 
<option value="Bathia">&nbsp;-Bathia</option> 
 

 
    
 
</select>

+0

こんにちはあなたの答えをありがとうございましたが、それは助けをdidntの。以前と同じように、リストの一番下にある選択したインデックスにジャンプします。私は、初心者のように動作するものを試しました:document.getElementById( 'Modell')。options [i] .selected = true; \t \t \t var index = document.getElementById( 'Modell')。selectedIndex;\t \t \t document.getElementById( 'Modell')。selectedIndex = index + 18; \t \t \t var index = document.getElementById( 'Modell')。selectedIndex;\t \t \t document.getElementById( 'Modell')。selectedIndex = index - 18; \t \t \t break; –

+0

@ tim-palermo参考のためにスニペット全体を追加しました。それは 'scrollIntoView()'メソッドで動作しています。不要なイベントの発生を防ぐためにonClickイベントをonchangeに変更します。 –

関連する問題