2
 HTML PART
 <select id="carlist" name="cars">
 <option value="volvo">Volvo</option>
 <option value="fiat">Fiat</option>
 <option value="audi">Audi</option>
 </select>


 JAVASCRIPT PART
 cars=["volvo","fiat","audi"];
 var best = "fiat";
 for (var i=0;i<cars.length;i++)
 {
 if (cars.value == best.value)
 (
  document.getElementById('carlist').selectedIndex= 2;
  }

最後の行の .selectIndex が 2 であるため、ドロップダウンの最終結果は常に audi です。変数 "best" に従ってドロップダウンの値が変化するように、最後の行でどのような変更を行いますか??

4

2 に答える 2

4
cars=["volvo","fiat","audi"];
var best = "audi";
for (var i=0;i<cars.length;i++)
{
  if (cars[i] == best)
  {
    document.getElementById('carlist').selectedIndex= i;
  }
}

JSフィドル

于 2013-04-24T12:18:17.587 に答える
1

これを試して

  var selectobject=document.getElementById("carlist")
    for (var i=0; i<selectobject.length; i++){
    if(selectobject.options[i].value == best)
         ocument.getElementById('carlist').selectedIndex= i;
    }
    } 

このロジックを for ループに記述します

また

cars=["volvo","fiat","audi"];
 var best = "fiat";
 for (var i=0;i<cars.length;i++)
     if (cars[i] == best)
       document.getElementById('carlist').selectedIndex= i;
于 2013-04-24T12:18:13.150 に答える