ok allora scusami, il fatto e' che non ci siamo intesi perchè io non ho messo il codice javascript, esso è il seguente:come vedi non potrei mettere un a href perche' il reload della pagina viene avviato direttamente dal javascript e non dall' html quindi come farei a far ricaricare una pagina con il numero delle stelline votate usando direttamente javascript?codice:<html> <head> <title>Valutazione stelle</title> <style type="text/css"> #star_rating ul { margin: 0px; padding: 0px; height: 16px; list-style: none; } #star_rating li { width: 19px; height: 16px; display: block; float: left; background-image: url('star-off.gif'); background-repeat: no-repeat; cursor: pointer; } #star_rating li.on { background-image: url('star-on.gif'); } #star_rating span.output { padding: 3px; color: #339900; font-weight: bold; } </style> <script type="text/javascript"> // faccio il preload dell'immagine utilizzata per l'effetto rollover var staron = new Image(); staron.src = "star-on.gif"; // Definisco la funzione per la votazione che verrà lanciata // all'evento onclick su una delle 5 stelle function star_vota(QT) { // Creo una variabile con l'output da restituire al momento del voto var star_output = '<span class="output">Hai votato ' + QT + ' stelle!</span>'; // Cambio dinamicamente il contenuto del DIV contenitore con il messaggio di // conferma di votazione avvenuta document.getElementById('star_rating').innerHTML = star_output; } // Definisco la funzione per "accendere" dinamicamente le stelle // unico argomento è il numero di stelle da accendere function star_accendi(QT) { // verifico che esistano i DIV delle stelle // se il DIV non esiste significa che si è già votato if (document.getElementById('star_1')) { // Ciclo tutte e 5 i DIV contenenti le stelle for (i=1; i<=5; i++) { // se il div è minore o uguale del numero di stelle da accendere // imposto dinamicamente la classe su "on" if (i<=QT) document.getElementById('star_' + i).className = 'on'; // in caso contrario spengo la stella... else document.getElementById('star_' + i).className = ''; } } } // Questa è la funzione che produce l'output. // richiede come unico argomento il numero di stelle che si vuole accendere // di default (possiamo in questo, ad esempio, modo mostrare il voto ottenuto // nelle precedenti votazioni) function star(QT) { // stampo il codice HTML che produce le stelle document.write('<div id="star_rating" onmouseout="star_accendi(' + QT + ')""><ul>'); document.write('<li id="star_1" onclick="window.location.reload()" onmouseover="star_accendi(0); star_accendi(1)">'); document.write('<li id="star_2" onclick="window.location.reload()" onmouseover="star_accendi(0); star_accendi(2)">'); document.write('<li id="star_3" onclick="window.location.reload()" onmouseover="star_accendi(0); star_accendi(3)">'); document.write('<li id="star_4" onclick="window.location.reload()" onmouseover="star_accendi(0); star_accendi(4)">'); document.write('<li id="star_5" onclick="window.location.reload()" onmouseover="star_accendi(0); star_accendi(5)">'); document.write('[/list]</div>'); // accendo le stelle definite in argomento star_accendi(QT); document.write('<div id="star_rating"><ul>'); } </script> </head> <body> valuta il gioco</p> <script type="text/javascript">star(0);</script> </body> </html>

Rispondi quotando