Hallo Lutz
stimmt leider nicht ganz, weil ich meinte mit Klasse nicht den im Zusammenhang mit objektorientierter Programmierung verwendeten Begriff, sondern den mit der Style-Formatierung von HTML-Tags verwendeten Begriff. (Ist aber auch ein Durcheinander!)
im IE und im NN6 geht es so
<form action="">
<input class="abc" name="a1"></input>
<input class="abc" name="a2"></input>
<input name="a3"></input>
</form>
<script type="text/javascript">
<!--
function geht_es()
{alert('ja');}
for (i =0;i< document.forms[0].length;i++)
{
if (document.forms[0][i].className=="abc") document.forms[0][i].onchange=geht_es;
}
//-->
</script>
Du fragst eben einfach nur die Elemente ab. Unter Opera 5.12 geht es nur wenn er sich als IE ausgibt (was für ein Schwachsinn).
Alternative:
du versteckst den Klassennamen im Elementenamen und fragst diesen ab.
<form action="">
<input class="abc" name="abc1"></input>
<input class="abc" name="abc2"></input>
<input name="a3"></input>
</form>
<script type="text/javascript">
<!--
function geht_es()
{alert('ja');}
for (i =0;i< document.forms[0].length;i++)
{
if (document.forms[0][i].name.indexOf("abc")>-1) document.forms[0][i].onchange=geht_es;
}
// -->
</script>
Dann machen auch Opera und Netscape 4 mit.
Viele Grüße
Antje