Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    cambiare lo stile di un div e settare il valore di un campo hidden

    Ciao a tutti,

    Allora spero di essere chiaro e ringrazio preventivamente per un eventuale aiuto.

    Da php genero una serie di form...di seguito un esempio:

    codice:
    <form name="fback" id="feedback1" action="" method="post"> 
    <ul class="star-rating"> 
    <li class="current-rating" id="currentrating1" style="width: 0px"> [*]1 [*]2 [*]3 [*]4 [*]5[/list]<textarea cols="30" rows="5" class="textareafeedback"></textarea>
     
    <input type="submit" name="submit" value="Feedback" class="inputsearch" /> 
    <input type="hidden" name="feedback" value="1" /> 
    <input type="hidden" name="voto" id="voto1" value="" /> 
    </form>
    Dato che il numero di form nella pagina è indefinito, assegno agli id un numero identificativo per intercettarli nella seguente funzione

    codice:
    function vote(star,id) 
    { 
    var field='voto'+id; 
    var div='currentrating'+id; 
    document.getElementById(field).value=star; 
    document.getElementById(div).style.width=(star*25)+'px' ; 
    }
    Allora dato che js sono una emerita pippa... e sarei anche un po stanchino di questo progetto su cui sto buttando sangue da un mese....chiedo umilmente aiuto...nn ce la faccio più.

    Il risultato che vorrei ottenere è che al click su una stella venga cambiato il valore dello stile width di currentrating1, e che il campo voto1 assuma il valore di star.

    Cambiare l'attributo width mi serve per fermare la stella sul click dell'utente, voto è un valore che andrò poi da inserire nel db.

    Vi ringrazio di cuore-

    Ah...premetto che cosi non mi da nessun errore ma non fa niente...

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    a occhio sembra corretto

  3. #3
    la cosa pazzesca è questa solitamente quando mi avventuro in js i messaggi di errori si stancano...

  4. #4
    Ovviamente l'errore era altrove:

    1 Avevo cambiato erroneamente la classe css relativa a currentrating per cui il js funzionava ma non potevo vederne i risultati perchè la classe era sbagliata.

    2 Il valore del campo voto1 effettivamente veniva cambiato....MA....credevo che una funzione di questo tipo rendesse le modifiche visibili facendo tasto dx vedi sorgente pagina. Invece se lo fai il codice resta lo stesso di prima della chiamata della funzione.

    2.1 Altro errore per cui non riuscivo a constatare la valorizzazione di voto1 è che questa form veniva stampata da una funzione a cui non passavo variabili, quindi richiamando voto1 all'interno della funzione pensavo erroneamente che non venisse valorizzato...

    Va ben grazie lo stesso pratica risolta.

  5. #5
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    per il debug usa firebug, che tra le tante cose mostra anche le modifiche apportate al DOM in tempo reale
    ciao

  6. #6
    ottimo grazie!

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.