Boris : Submitbutton & Rollover

Beitrag lesen

Hi Cybaer!

Dann mache einen "W3C-DOM-2"-konformen Rollover, indem Du das SRC-Attribut des grafischen Submit-Buttons mittels setAttribute wechselst.

Wenn ich Dich und JS richtig verstehe müsste das etwa so aussehen:

<script type="javascript">
<!--
function Wechsel() {
document.all.Wechsel.setAttribute("src","Bild2.gif","false");
}
//-->
</script>
...
<html>
 <input  id="Wechsel" onMouseOver="Wechsel()"
   type="image" src="Bild1.gif" name="Bild1">
</html>

An diesem Beispiel sieht man, dass es nicht geht UND dass ich keine ahnung von JS habe :)) wahrscheilich lachen mich alle JS-Coder die das lesen grade aus.
Ich vermute, dass sich das onMouseOver-event nur auf imgs beziehen und src nicht "grafik"-dynamisch sein kann. Aber vielleicht liege ich auch falsch.

<a href="test.cgi"
   onMouseOver="Bildwechsel(0,Highlight1)"
   onMouseOut="Bildwechsel(0,Normal1)">
   <img  src="Bild1" name="Bild1">
   </a>

Diese Variante (mit dazugehörigen Script) funktioniert, was den Rollover betrifft.
Bei der Variante:

<a href="test.cgi"
   onMouseOver="Bildwechsel(0,Highlight1)"
   onMouseOut="Bildwechsel(0,Normal1)">
   <input type="image" src="Bild1" name="Bild1">
</a>

versagt der Rollover, aber das INPUT-Tag arbeitet 1a.

Aber: Ein Formular hat ja i.d.R. nur einen Submit-Button. Wenn Du mehrere (normale Grafiken) nimmst und dann mittels onClick und submit() arbeitest (was dann ohne JavaScript nicht mehr gleichwertig zu lösen ist!), schreibe in der onClick-Routine einen Wert in ein Hidden-INPUT. Je nach dessen Wert, wurde der entsprechende "Fake-Submit-Button" geklickt.

Das hört sich vielversprechend an. Mal angenommen ich erzeuge einen Rollover mit:

<form name="Testform" action="echtes.cgi" method="get">
<input type="hidden" value="hiddenValue" name="hiddenName">
<a href="unrelevantes.cgi"
   onMouseOver="Bildwechsel(0,Highlight1)"
   onMouseOut="Bildwechsel(0,Normal1)"
   onClick="SendeFunktion()">
   <img  src="Bild1" name="Bild1">
   </a>
</form>

und erweitere unter den onMouse-Routinen ein onClick mit verweis auf eine eigene Funktion, die dann mittels setAttribute das Hidden-Tag modifiziert und am schluss mit submit() und verweis auf "Testform" sendet.

Verstehe ich dich richtig?