Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][JavaScript] input type="radio" - pobranie danych
Forum PHP.pl > Forum > Przedszkole
peter13135
  1. meszczyzna<input id="sex" name="sex" type="radio" value="1" />
  2. kobieta<input id="sex" name="sex" type="radio" value="2" />


w jaki sposób mogę (lub jak to zmodyfikować żebym mógł) odczytać za pomoca js zaznaczoną wartość??

takie coś

  1. document.getElementById('sex').value
nie działa (pewnie dlatego że są 2 takie same id
wookieb
po pierwsze nie moze byc w dokumencie dwoch elementow o tym samym id.
Raczej powinno byc cos w ten desen
Kod
document.forms['nazwa_formularza'].sex.value
luniak
wookieb a ja od siebie dodam że pierw sprawdź czy dany radio jest zaznaczony smile.gif

document.fi.kodtype[i].checked

gdzie za i wstawiasz koleny numer pola poczynając od 0

bo przecież oba radio mają ten sam "name"
więc odwołuj sie do nich poprzez tablicę pól

wartosc = document.fi.kodtype[i].value;
peter13135
a co jeśli nie jest w formularzu questionmark.gif czy w takim przypadku muszę dodawać <form> żeby z tego odczytać questionmark.gif
wookieb
Tfu zapomniałem
Kod
function getValue()
{
    for(var i in document.forms['nazwa_formularza'].sex)
    {
        if(document.forms['nazwa_formularza'].sex[i].checked)
        {
            return document.forms['nazwa_formularza'].sex[i].value;
        }    
    }

}


A jak nie jest w formularzu to musisz pobrac w inny sposob ich liste. np getElementsByTagName('input');
luniak
umieszczanie elementów

<imput> poza znacznikami <form>

jest raczej mało poprawne smile.gif tym bardziej że pól formulaża odwołujesz się poprzez nazwę formulaża


np
document.formulaz_nazwa.kodtype[0].checked


oczywiście można to zrobić poprzez

getElementsByTagName('input');

ale poprawniej, łatwiej i szybciej jest umieścić znaczniki <form>

smile.gif
peter13135
  1. if(document.getElementsByTagName('sex')[0].checked==true) alert(1); if(document.getElementsByTagName('sex')[1].checked==true) alert(2);


zrobiłem takie coś dla sprawdzenia czy działa... i nie działa, co zrobiłem tutaj źle questionmark.gif
erix
Nie byTagName, tylko raczej byId... Ale nie zadziała, bo ID musi być unikalny. Ustaw name i użyj byName.

Nie ma w kodzie tagu <sex/>. ;P
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.