checkboxen auswerten
Jochen
- javascript
Hallo, ich möchte jedesmal einen neuen Querystring in das Texfeld "stringfeld" schreiben wenn eine checkbox aktiviere,also z.B. layer=name2&layer=name4
Nur leider läuft das nicht so wie ich denke, was mach ich falsch?
habe folgenden Code:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Layeruebersicht</title>
</head>
<script language="JavaScript" type="text/JavaScript">
function setLayerstring()
{
var maplayer = document.getElementsByName("layer");
var string = ""
for(var i=0, j=maplayer.length; i <= j; i++)
if (maplayer[i].checked == true){
string = "layer=" + maplayer[i].id + "&" +
}
document.form1.stringfeld.value = string;
}
</script>
<body>
<form name="form1" method="post" action="">
<input type="checkbox" name="layer" value="checkbox" id="name1" onclick="javascript:setLayerstring();">Layer1<br>
<input type="checkbox" name="layer" value="checkbox" id="name2" onclick="javascript:setLayerstring();">Layer2<br>
<input type="checkbox" name="layer" value="checkbox" id="name3" onclick="javascript:setLayerstring();">Layer3<br>
<input type="checkbox" name="layer" value="checkbox" id="name4" onclick="javascript:setLayerstring();">Layer4<br>
<input name="stringfeld" type="text" value=""><br>
</form>
</body>
</html>
Danke für jede Hilfe,
Jochen
Hallo Jochen,
Nur leider läuft das nicht so wie ich denke, was mach ich falsch?
Dein Programm stinkt vor Syntaxfehlern nur so! Du hast Dir offensichtlich nicht die geringste Mühe gemacht, Testausgaben zu machen oder die JS-Konsole deines Brausers zu befragen. Der Mozilla hat da z.B. sehr verständliche Meldungen. Übrigens helfen vernünftige Einzüge nicht nur einem selbst, sondern auch dem Helfer :-)
So funktioniert es. Du darfst es aber nur verwenden, wenn Du mir alle Fehler aufzählst, die jetzt bereinigt sind ;-)
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Layeruebersicht</title>
<script type="text/JavaScript">
function setLayerstring()
{
var maplayer = document.getElementsByName("layer");
var string = ""
for(var i=0; i < maplayer.length; i++)
{
if(maplayer[i].checked == true)
{
string += "layer=" + maplayer[i].id + "&"
}
}
document.form1.stringfeld.value = string;
}
</script>
</head>
<body>
<form name="form1" method="post" action="">
<input type="checkbox" name="layer" value="checkbox" id="name1" onclick="javascript:setLayerstring();">Layer1<br>
<input type="checkbox" name="layer" value="checkbox" id="name2" onclick="javascript:setLayerstring();">Layer2<br>
<input type="checkbox" name="layer" value="checkbox" id="name3" onclick="javascript:setLayerstring();">Layer3<br>
<input type="checkbox" name="layer" value="checkbox" id="name4" onclick="javascript:setLayerstring();">Layer4<br>
<input name="stringfeld" type="text" value=""><br>
</form>
</body>
</html>
Gruß, Andreas
Hallo Andreas,
Asche über mein Haupt, vielen Dank für die Hilfe!
Ich gelobe Besserung und zu Weihnachten gibts ein Javascript-Lehrbuch.
Grüße
Jochen
Dein Programm stinkt vor Syntaxfehlern nur so! Du hast Dir offensichtlich nicht die geringste Mühe gemacht, Testausgaben zu machen oder die JS-Konsole deines Brausers zu befragen. Der Mozilla hat da z.B. sehr verständliche Meldungen. Übrigens helfen vernünftige Einzüge nicht nur einem selbst, sondern auch dem Helfer :-)
Ich gelobe Besserung und zu Weihnachten gibts ein Javascript-Lehrbuch.
Ich empfehle Stefan Koch: "Java Script".
Gruß, Andreas