Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Aggiorna a tutti

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630

    Aggiorna a tutti

    Carissimi,
    utilizzando questa funzione in un elenco dinamico di risultati;
    codice:
    <script language="javascript" type="text/javascript">
    
    function assegnaSupportoATutti(indice) {
        var selSupporto = document.forms['info'].supporto;
        var indiceSelezionato = selSupporto[indice].selectedIndex;
        for (var i=0; i<selSupporto.length; i++) {
            selSupporto[i].selectedIndex=indiceSelezionato;
            
    if(selSupporto[i].value == "lucida") {
    document.getElementById('boxa<%=iContatore%>').style.display = 'block';
    document.getElementById('box<%=iContatore%>').style.display = 'none';
    }
    if(selSupporto[i].value == "opaca") {
    document.getElementById('boxa<%=iContatore%>').style.display = 'block';
    document.getElementById('box<%=iContatore%>').style.display = 'none';
    }
    if(selSupporto[i].value == "seta") {
    document.getElementById('boxa<%=iContatore%>').style.display = 'block';
    document.getElementById('box<%=iContatore%>').style.display = 'none';
    }
    if(selSupporto[i].value == "metal") {
    document.getElementById('boxa<%=iContatore%>').style.display = 'none';
    document.getElementById('box<%=iContatore%>').style.display = 'block';
    }
    }
    }
    </script>
    e viene richiamato
    codice:
                <% if displayPulsanti = true then %>
                <input type="button" value="Imposta x tutti" title="Assegna formato a tutte" onclick="assegnaFormatoATutti(<%=iContatore%> )" />
                <% end if %>
    Impostando METAL o altri dalla select e premendo il pulsante di impostazione, imposta correttamente a tutti, solo che non cambia a tutti i risultati delle div (box - boxa), lo cambia solo al primo e all'ultimo risultato, come mai? Dove sbaglio?
    Grazie per l'aiuto.
    G.

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630
    UP (noto che è troppo difficile)

  3. #3
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Ciao. Seriamente, trovo difficile capire la tua richiesta. Di solito, per quanto mi riguarda, evito di rispondere quando, dopo aver riletto per la terza volta un post, non riesco a comprenderne il senso (senza offesa).
    Potresti riformulare la richiesta in modo più preciso e aggiungendo maggiori dettagli?

    - Cosa intendi per "elenco dinamico di risultati"?

    - Nella costruzione del codice utilizzi ASP (da quello che mi sembra di capire), ma cosa è la variabile iContatore? Dove viene valorizzata e che valore assume?

    - Sulla seconda parte di codice hai scritto onclick="assegnaFormatoATutti, mentre la funzione nel primo codice si chiama assegnaSupportoATutti... Confuso!?

    - Di quale select parli? Puoi postare la parte html riguardante questa select?

    - Puoi chiarire meglio questo concetto: imposta correttamente a tutti, solo che non cambia a tutti i risultati delle div (box - boxa).

    - In generale, qual'è il contesto del codice che hai postato?
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630
    A questo indirizzo è visibile la funzionalità completa degli script
    http://www.studiofotografare.it/publ...rovaforums.asp
    Come si può notare selezionando dal menù SUPPORTO, l'opzione METAL tramite una div cambia la select del FORMATO (prima opzione15x20) ora selezionando quindi METAL e cliccando su IMPOSTAXTUTTI aggiorna correttamente la select del supporto a tutti ma non quella del formato, anzi lo fa solo all'ultimo risultato, com'è possibile? Grazie
    G.

  5. #5
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Ho dato uno sguardo alla pagina linkata. Ci sono parecchi errori di validazione:
    http://validator.w3.org/unicorn/chec...k=conformance#

    Dal momento che stai operando sugli elementi del DOM attraverso javascript, questo potrebbe portare a dei risultati inaspettati, a prescindere dalla correttezza del codice javascript.
    Non ho idea se il codice javascript sia effettivamente corretto o meno ma personalmente non saprei come aiutarti se non si risolvono prima tutti gli errori sul codice html.
    Ultima modifica di KillerWorm; 05-03-2014 a 23:38
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630
    Grazie killerworm, ma volevo farti notare che questa pubblicata è una pagina d'esempio non definitiva adattata per visionare e testare script etc, quindi è più che normale che è piena di errori di validazione, ma che sicuramente non influiscono sul codice javascript, dove effettuo controlo, pertanto a me interessava come dicevo prima, come mai aggiorna solo l'ultimo risultato mentre si effettua la suddetta operazione. grazie

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630
    nessun aiuto?

  8. #8
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771

    Consiglio di cambiare metodo

    Perdonami ma non puoi pensare di ottenere dei risultati validi utilizzando questo tipo di approccio e tantomeno degli aiuti.
    Sulla pagina di test basta dare uno sguardo al codice sorgente per capire che è un totale minestrone (non voglio offenderti ma è così). Hai inserito codice javascript un po' ovvunque, mentre il codice html è mal formattato e presenta vari tag non chiusi o male impostati (per non parlare di tutti gli altri errori).

    A maggior ragione, se quella è una pagina di test, deve essere correttamente impostata per capire come risolvere al meglio gli errori.

    Mi dici che questo sicuramente non influisce sul codice javascript ma io non ne sarei troppo sicuro. Influisca o no, credimi, è pressocché impossibile darti aiuto in questo modo qui.

    Mi auguro che le tue pagine definitive siano meglio impostate. Se così non fosse, ti consiglio di cambiare approccio.

    Apri un nuovo file e riscrivi ordinatamente tutto il tuo codice col presupposto di mantenere separate le varie parti (html, css, script).
    Inizia a sistemare tutta la struttura html (senza inserire attributi di formattazione o css in linea) e assicurati che tutto il codice sia adeguatamente validato (http://validator.w3.org/unicorn/).

    Il css lo inserisci nell'head, e solo lì, eventualmente come foglio di stile esterno o comunque embeddato nel documento. Evita ad ogni modo di pasticciare con regole css "spruzzate" qua e là sugli elementi del DOM. Chiaro che non è una regola fissa ma, come da manuale, è meglio tenere ben separati i contenuti da ciò che riguarda esclusivamente l'aspetto grafico. Questo rende più leggibile il tuo codice e garantisce una migliore identificazione degli errori in fase di debug/testing.

    Tutto lo script javascript puoi inserirlo sempre nell'head. Ho visto che nella pagina vai ad includere il framework prototype, ma non ne fai minimamente uso per il tuo script. Probabilmente lo usi solo per gli effetti con la libreria scriptaculous. Invece ti sarebbe molto utile imparare ad usare un framework come quello (io personalmente ti consiglierei jQuery) che ti semplifica di gran lunga la stesura del tuo script e garantisce una maggiore compatibilità crossbrowser.

    Ad ogni modo nella programmazione è molto importante la pulizia del codice ed è essenziale la sua corretta formattazione.
    Chiaramente i miei sono solo dei consigli. Se preferisci fare in altro modo, libero di farlo, ma non stupirti se non ricevi aiuto.

    Per non andare offtopic chiudo qui il mio intervento. Perdonami se posso essere sembrato polemico. Nel caso sarei, personalmente, ben propenso ad aiutarti se cambi approccio come ti ho consigliato. Diversamente attendi risposta da altri utenti.

    Buon proseguimento.
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

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.