Mam funkcję JavaScript, która powinna aktualizować ukryte pole wejściowe w mojej formie z liczbą, która zwiększa się za każdym razem, gdy funkcja jest wywoływana.getElementsByName() nie działa?
Udało się pierwotnie z getElementById() jednak ponieważ musiałem przeprojektować mojego formularza nie można korzystać z funkcji php przypisać indywidualny identyfikator elementu, więc wszystko, co mam jest unikalną nazwę dla tego elementu.
Zamiast tego postanowiłem użyć getElementsByName() z Javascript, aby zmodyfikować ten element.
Oto HTML tego elementu
<input type="hidden" value="" name="staff_counter">
To jest mój kod JavaScript:
window.onload=function()
{
//function is activated by a form button
var staffbox = document.getElementsByName('staff_counter');
staffbox.value = s;
s++;
}
otrzymuję żadnych błędów na Firebug, gdy funkcja jest wywoływana i pole wejściowe nie robi wartość podana.
Pracował z getElementById(), ale dlaczego nagle nie działa z getElementsByName()?
- - Sprawdziłem, czy jest to jedyny unikalny element w dokumencie.
- -I sprawdzane za ewentualne błędy w Firebug, gdy uaktywnienie funkcji
Oto kod używam z CodeIgniter aby elementowi
// staff_counter is name and the set_value function sets the value from what is
//posted so if the validation fails and the page is reloaded the form element does
// not lose its value
echo form_hidden('staff_counter', set_value('staff_counter'));
Dzięki
W jaki sposób zainicjowano? – yokoloko
sprawdź to http://stackoverflow.com/a/43795346/5289704 –