Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: oField.type = 'text'; Czy jest inne wyjscie ?
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
thornag
Witam,

Napotkalem sie na problem w IE (w FF i Operze dziala poprawnie). Otoz dla kodu: (w oField siedzi obiekt pola formularza)

Kod
  try {
                                oField.type = 'text';
                            } catch(err) {
                                alert('Error:  '+err.description);
                            }


Zawsze dostaje komunikat o bledzie. Wniosek z tego taki ze IE nie potrafi zmienic input type. Wymyslilem ze mozna w sumie wsadzici takie pole w diva i zmienic innera na inny input aczkolwiek takie rozwiazanie mnie nie satysfakcjonuje. Czy ktos naptkal sie na ten problem i ma jakies bardziej elegenckie rozwiazanie ?
gekon
A jak zmieniasz ten typ?
nospor
Cytat
A jak zmieniasz ten typ?
NO chyba masz napisane:
Kod
//....
oField.type = 'text';
//...

....

@thornag no usuwasz ten obiekt a w jego miescje wkladasz nowo dynamicznie stworzony.
thornag
Problem polega na tym ze tworze sobie taki obiekt do validacji formularzy takze chce zachowac jak najwieksza elastycznosc. Dlatego nie chce usuwac i tworzyc na nowo bo nie wiem co bedzie parentem takiego ani w ktorym miejscy sie on znajduje. Jesli 10 inputow bedzie w jednym divie to chce zeby zminil mi sie 5 a nie zniknal 5 a pojawil sie nowy na koncu listy. Dlatego tez szukam innego rozwiazania.
nospor
ale majac obiekt, znasz jego rodzica:
obj.parentNode

pozatym DOM oferuje takie cus, jak replaceChild smile.gif
thornag
@nospor, dziki Ci za wskazanie replaceChild smile.gif))) hehe biggrin.gif
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.