Topic: Get element by name

Sveiki,

ar imanoma su JS paimti reiksme ne pagal id document.getElementById("mySelect"), o pagal name.
Sita document.getElementsByTagName("input") bet jis ima grinai HTML elementus.

Su greasemonkey bandausi ir noriu, kad automatiskai pazymetu Saab reiksme. Nereiketu paciam su pelyte zaisti..

<select name="test" id="namas">
  <option value="volvo-masina">Volvo</option>
  <option value="saab-masina">Saab</option>
  <option value="mercedes-masina">Mercedes</option>
</select>

Kaip issirinkti reiksmes zinau sita, bet cia su id

function displayResult()
{
var x=document.getElementById("namas");
var txt="";
var i;
for (i=0;i<x.length;i++)
  {
txt=txt + "\n" + x.options[i].text;
  }

alert(txt);
}

Re: Get element by name

O kuo tavo atveju būtinai reikalingas elemento pasiekimas pagal name? Yra id ir naudokis juo.

Toliau, kad pažymėti select tipo elemente konkrečia reiškimę, tau reikia pakeisti to elemento atributą selectedIndex.

Tau reikėtų kažko panašaus:

var select_obj = document.getElementById('namas');
for (i=0; i < select_obj.length; i++){
  if (select_obj.options(i).text == 'saab-masina'){
    select_obj.options(i).text.options(i).selected = true;
    return;
  }
}

Re: Get element by name

Siuo atveju nebuvo butinas man name, bet ateiciai norejau suzinoti. Dekui uz skripta. Praverte:)