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?