Visualizzazione dei risultati da 1 a 8 su 8

Discussione: style="display: none;"

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    76

    style="display: none;"

    buongiorno ho la seguente riga di codice:


    codice:
    <select id="select_desc_1" name ="select_desc_1" style="width: 230px;">
            <option id="1_1_57" value="1_1_57"  style="display: none;" >Partita IVA</option>
    </select>

    in firefox l'option viene giustamente nasconsto ma in IE (7.0) no....

    commetto che è un errore stupido ed evidente...ma non riesco a trovarlo....

    help me plz!

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    76
    valgono gli uppini?

    ....per voi è corretta questa soluzione?...

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Dal punto di vista teorico, la cosa e` corretta.
    Il problema e` l'applicazione: che io sappia non tutti i browser permettono di dare uno stile alle option (prendono solo lo stile della select).

    Pero` .... pero` mi sorge il dubbio: che senso ha?
    Che senso ha nascondere (ma non eliminare) un'option da una select.

    In linea di massima se si deve nascondere qualcosa e` per un tempo/situazione limitati: ad esempio nei menu viene nascosto il sottomenu (perche` viene mostrato al :hover); nei CSS di stampa vengono nascosti alcuni blocchi (che non hanno senso se stampati); ...

    Ma nel tuo caso?
    Forse c'e` un JS che ad un certo punto (ad un particolare evento) visualizza le opzioni?
    Con quel tanto il JS e` in grado anche di ricreare tutte o parte delle opzioni.

    Oppure mi sfugge qualcosa ....
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    76
    allora allora allora...

    io ho due select (una "fissa" e una "variabile"), la select varaibile dipende dalla select fissa, nel senso che i valori visualizzati da quella variabile dipendono dal tipo di selezione fatta su quella fissa.

    ho optato questa soluzione in quanto i dati vengono caricati dal db durante la creazione della pagina, di sconseguenza, avevo l'esigenza di qualche stratagemma per non tornare ogni volta sul server per gestire la select variabile.
    Quindi cosa faccio: nella select variabile carico tutti i possibili valori che posso ottenere dalla select fissa, e poi nascondo (facendo una sorta di filtro in js che va a modificare style.display) i campi che non sono di interesse per una determinata selezione della select fissa

    esistono soluzioni migliori?se la risposta è positiva...sono benvenute : )

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Il problema lo avevo gia`visto molti anni fa, quando ancora di CSS non si parlava.

    Si puo` riempire una select attraverso JS, partendo da dati presenti in un'altra select o depositati da qualche parte nella pagina.

    Ora la soluzione che avevo visto io non e` piu` attuale (nel frattempo anche JS se e` evoluto, e le tecniche usate allora non sono piu` compatibili con i brwoser recenti), ma la possibilita` di aggiungere, togliere, modificare il contenuto di una select e` ancora valida.

    Il mio consiglio quindi e`:
    1. verificare tra i "link utili" del forum JS se c'e` qualche riferimento
    2. verificare tra le raccolte di JS
    3. cercare in rete
    4. postare nel forum JS.

    Non credo sia il caso di spostare questo thread in JS, dato che la domanda non e` attinente a quel forum, per cui se non trovi nei punti 1-3, poni un quesito nuovo in quel forum.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  6. #6
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    direi che la cosa più semplice ed efficace è gestire la variazione delle options via js.
    valori e captions delle varie option (tutte quelle possibili) possono essere codificate in un hash

    ad ogni cambiamento della prima select, leggi l'hash, prendi le sole chiavi che ti servono, rimuovi le opzioni dalla seconda select e infine la popoli costruendo le opzioni.

    Solo ricordati comunque che sarebbe sempre bene rendere accessibile il meccanismo anche a js disabilitato.
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    76
    in mattinata ho fatto diverse prove e quella che mi ha stupito di più è stata questa:

    se al posto di gestire la visibilità gestisco il colore, explorer funziona correttamente....

    codice:
    <select id="select_desc_1" name ="select_desc_1" style="width: 230px;">
            <option id="1_1_57" value="1_1_57"  style="background: #000000;" >Partita IVA</option>
    </select>
    (come è possibile vedere dal codice, il risultato sarà un menu a tendina tutto nero)

    di conseguenza non è che IE non gestisce lo stile nelle option, ma le gestisce in parte (background si, display no)

    ...inizialmente avevo optato per una soluzione js, ma risultava alquanto complicata (per le mie conoscenze)...se possibile, preferirei trovare una soluzione css/style. in quanto io e js non andiamo tanto d'accordo

    comunque grazie mille per l'aiuto che mi state dando...

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    76
    ok a quanto sembra il problema è più grosso del previsto...anche questo tipo dice che IE non gestisce display:none nei tag option e la soluzione che ha preso mi spaventa un po

    http://avatraxiom.livejournal.com/92487.html

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.