onmouseclick Wert speichern
mitch26
- javascript
Schönen guten Tag,
ich habe mir mithilfe des Internetz ein Bewertungssystem erstellt. Nur wird bei diesen Beispielscript wenn man auf die Sterne klickt sofort auf eine neue Webseite weitergeleitet. Das will ich nicht. Sondern bei mir soll es so sein das die Bewertung stehen bleibt und der User auch die Chance hat sie nochmal zu ändern (die Bewertung).
Da ich neu auf diesen Gebiet bin und durch die Scripte lerne brauche ich dabei hilfe.
<Script language=javascript>
function selstar(val)
{
for(var x=1;x<=val;x++)
{
document['i'+x].src="<?php echo "$hm2";?>/images/star2.gif";
}
}
function remstar(val)
{
for(var x=1;x<=val;x++)
{
document['i'+x].src="<?php echo "$hm2";?>/images/star1.gif";
}
}
function setrate(val)
{
document.rate.rating.value=val;
document.rate.submit();
}
</script>
<tr>
<td align=center>
<b>Rate this Page :</b>
<img name=i1 class=star onmouseover="selstar(1)" onmouseout="remstar(1)" onclick="setrate(1)" src="<?php echo "$hm2";?>/images/star1.gif">
<img name=i2 class=star onmouseover="selstar(2)" onmouseout="remstar(2)" onclick="setrate(2)" src="<?php echo "$hm2";?>/images/star1.gif">
<img name=i3 class=star onmouseover="selstar(3)" onmouseout="remstar(3)" onclick="setrate(3)" src="<?php echo "$hm2";?>/images/star1.gif">
<img name=i4 class=star onmouseover="selstar(4)" onmouseout="remstar(4)" onclick="setrate(4)" src="<?php echo "$hm2";?>/images/star1.gif">
<img name=i5 class=star onmouseover="selstar(5)" onmouseout="remstar(5)" onclick="setrate(5)" src="<?php echo "$hm2";?>/images/star1.gif">
<input type=hidden name="rating">
Ich müsste quasie das Event onmouseclick so ändern das wie in der function selstar(val) die Sterne ausgewählt werden der Stern aber stehen bleibt.
Wie kann ich das umsetzen?
Danke schonmal im voraus
Entferne den Aufruf von document.rate.submit(); aus der Funktion setstar und bringe die Übertragung der Auswahl an anderer Stelle unter.
Wenn Du bei jedem Klick die Auswahl übertragen bekommen willst, kannst Du entweder die Bewertung in einem iframe kapseln oder aber über asynchrones JavaScript an den Server übertragen.
Gruß, LX
Entferne den Aufruf von document.rate.submit(); aus der Funktion setstar und bringe die Übertragung der Auswahl an anderer Stelle unter.
Wenn Du bei jedem Klick die Auswahl übertragen bekommen willst, kannst Du entweder die Bewertung in einem iframe kapseln oder aber über asynchrones JavaScript an den Server übertragen.
Gruß, LX
Hallo LX
also ich würde das gerne nur temporär speichern und dann beim übertrage (aufrufen der neuen seite) den Wert in eine DB schreiben, mittels php/sql.
wie funktioniert das mit dem iframe? bleiben dann die Sterne beim anklicken fixiert?
Mit dem Iframe kannst Du das Formular durchaus abschicken, Du mußt nur die gegebene Wertung anzeigen. Auf diese Weise wechselt nur die Wertungsseite im Iframe, nicht die ganze Seite.
Gruß, LX
Mit dem Iframe kannst Du das Formular durchaus abschicken, Du mußt nur die gegebene Wertung anzeigen. Auf diese Weise wechselt nur die Wertungsseite im Iframe, nicht die ganze Seite.
Gruß, LX
Schönen guten Morgen,
klingt logisch. Nur wie lasse ich mir die aktuelle Wertung dann anzeigen?
lg mitch26