select feld on change

limk

Mitglied
hi hab nicht die größte ahnung von javascript und komme daher bei einem kleinen Formular nicht weiter.
Also ich hab ein Select feld in dem verschiedene Werte ausgewählt werden können. Je nachdem, was ausgewählt ist sollen darunter entweder 1,2 oder 3 input felder sein. Also dachte ich mir mittels on change den value des selects an eine function zu übergeben, die dann das mit den Input Feldern regelt, aber da scheitert es schon :(

hier mein code (bis jetzt zum testen):
<html>
<head>
<script type="text/javascript">
<!--
function aendern() {
alert(document.form.wert.value + document.form.nr.value);
}
//-->
</script>
</head><body bgcolor="#ffffdd">
<form method="post" name="form" action="<? echo $PHP_SELF ?>" onSubmit="return chkFormular()">
<select name="wert" size="1" onChange="aendern()">
<option selected>wert1</option>
<option>wert2</option>
<option>wert3</option>
<option>wert4</option>
<option>wert5</option>
</select><br>
<input type="text" name="nr" value="<? echo $nr ?>" size="15" maxlength="6">

<input type="submit" name="submit" value="Weiter">
</form>
</body>
</html>


Wenn ich ne nr eingegeben habe erscheint sie im alert aber das, was ich ausgewählt habe im select interessiert den script nicht warum??
 
Weil du versuchst, den value vom select-Tag.
du musst zuerst die selecttierte option ermitteln, und dann davon den value auslesen
sieht ungefär so aus:

PHP:
nummer = document.formular.selectfeld.selectedIndex;
VALUE_DAVON = document.formular.selectfeld.options[nummer].value;

glaube jedenfalls dass es so stimmt (habs nonet ausprobiert)
 
Code:
<html> 
<head> 
<script language="javascript">
<!-- 
function aendern() { 
  var feld = "";
  for(var i = 0; i < document.form.wert.value; i++) {
    feld += "<input type=\"text\" name=\"feld" + i + "\"><br>";
  }
  if(document.all) {
    document.all.feld_div.innerHTML = feld;
  }
} 
//--> 
</script> 
</head><body bgcolor="#ffffdd"> 
<form method="post" name="form" action="<? echo $PHP_SELF ?>"> 
<select name="wert" size="1" onChange="aendern()"> 
<option selected value="1">wert1</option> 
<option value="2">wert2</option> 
<option value="3">wert3</option> 
<option value="4">wert4</option> 
<option value="5">wert5</option> 
</select><br> 
<div id="feld_div"></div>

<input type="submit" name="submit" value="Weiter"> 
</form> 
</body> 
</html>

is aber bisher nur für IE
falls fragen zu innerHTML und anderen browsern hast
dann einfach posten :)
greetZZzz
 
danke danke danke!! Das funktioniert ja super :)

Ach ja und wo wir grad dabei sind ist es damit auch möglich das select in einer labelauswahl zu ändern??

<label><input name="art" type="radio" value="1">wert1</label><br>
<label><input type="radio" name="art" value="2" checked>wert2</label><br>
<label><input type="radio" name="art" value="3">wert3</label>
 
ich kenn das tag <label> garnicht
wäre über eine aufklärung sehr dankbar

aber grundsätzlich geht es darum das du via innerHTML HTML-Code in ein Div eintragen kannst

also solltest du auch mit labels arbeiten können
 
label, das sind diese runden punkte zum anklcicken, wie hier im forum z.b. bei den smilies - ich werds mal mit dem innerHTML versuchen :)
 
lol
hab gedacht das sind radiobuttons mit css
soviel ich weiss gibts radiobuttons und checkboxen
aber das label was eigenes ist wusste ich nicht

greetZzz
 

Neue Beiträge

Zurück