Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [$] [js] problem z dodawaniem stylu border do Tagu select dla IE
Forum PHP.pl > Forum > Po stronie przeglądarki
qrcze_pieczone
Witam

Tak jak w temacie
dodaję z poziomu js lub $ style do danego selecta
  1. document.getElementById(id_input).style.border='1px solid #FF0000';
  2. albo w $
  3. $('#id_input').css('border','1px double #c00000')
  4. lub
  5. $('#id_input).addClass('error')

i pod normalnymi przeglądarkami to działa
ale pod IE nie sad.gif
jak by ktoś maił pomysł jak sobie z tym poradzić to czekam jak zwykle na dobrą radę
nospor
A masz pole które ma ID 'id_input'? Nie NAME a ID smile.gif
qrcze_pieczone
nospor - prędkość z jaką zareagowałeś jest powalająca winksmiley.jpg

jest <select name="id_input" id="id_input">
nospor
Kod
alert($('#id_input).length);

Jesli to ci wyswietli "1" - znaczy ze IE nie obsluguje tego stylu co dajesz.
Jesli "0" - ..... winksmiley.jpg to pokaż dokladnie caly kod
qrcze_pieczone
Tak to wygląda w js
jest to prosty kodzik walidujący czy dane pole jest wypełnione
  1. function Weryfikuj_car(){
  2. document.forms['form_add_car'].onsubmit = Verify_car;
  3. }var _input_control_ = new Array('rodzaj_pojazdu','marka','typ','rodzaj_zabudowy','nr_rejestracyjny','nr_winiety');
  4. function Verify_car(){
  5. var error=false;
  6. for(index in _input_control_){
  7. var id_input = _input_control_[index];
  8. var id_value = document.getElementById(id_input).value;
  9. if(id_value==""){
  10. document.getElementById(id_input).style.border='1px solid #FF0000';
  11. error=true;
  12. }
  13. if(id_value!=""){
  14. document.getElementById(id_input).style.border='1px solid #ccc';
  15. if(!error) error=false;
  16. }
  17. }
  18. if(error) return false;
  19.  


i pod IE te pola są walidowane tylko że w przypadku selecta nie koloruje ramiki
nospor
No to debuguj i po kolei dojdziesz do bledu...
Kod
for(index in _input_control_){
                    var id_input = _input_control_[index];
alert('Tu ma byc id:'+id_input);
                var id_value = document.getElementById(id_input).value;                
alert('Tu ma byc wartosc:'+id_value);
                    if(id_value==""){
alert('Tu wszedlem');
                    document.getElementById(id_input).style.border='1px solid #FF0000';    
                        error=true;
                    }
                    if(id_value!=""){
                        document.getElementById(id_input).style.border='1px solid #ccc';
                        if(!error) error=false;
                    }
                }

co ci wyswietla?
qrcze_pieczone
Zwraca wszędzie "Tu ma być wartość" puste pole i wchodzi do danego inputa

przetestowałem jquery zwraca 1

tylko że on mi zwraca wszędzie jedynki w przypadku jquery i koloruje w IE wszytkie inputy, textarea a nie koloruje selecta

odnoszę wrażenie , że fakt że on nie koloruje selecta to po prostu taki jest urok IE
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.