# Select Feld deaktivieren/aktivieren im Array



## dreambaser (20. Januar 2009)

Hallo Leute,

ich habe mir eine Funktion geschrieben, die 2 Select Felder miteinander vergleicht und bei bestimmten Eintrag eine Select Box auf disabled stellt.

Das ganze funktioniert auch soweit bei einer Abfrage.

Nun ist es aber so, das ich diese Funktion immer wieder brauche und die Values der einzelnen Objekte als Array weiterverarbeite. Wie müsste ich die Funktion anpassen, das Sie dynamisch auf das Formular reagiert

Hat jemand ne idee

Hier mal nen Auszug des ganzen.


```
<html>
<head>
<script type="text/javascript">
function disable(){
  if(document.suche.selectblock[].options[5].selected == true){
    document.suche.kt.disabled = true;
    
  }else{
   document.suche.kt.disabled = false;
  
  }
}

</script>

</head>
<body>
</body>
<form name="suche">


<select name="kt">
<option value="kt0">kt0</option>
<option value="kt1">kt1</option> 
<option value="kt2">kt2</option>
<option value="kt3">kt3</option>

</select>
<select name="selectblock" onClick="disable()">
<option value="60">60 </option>
<option value="120">120</option> 
<option value="240">240</option>
<option value="660">660</option>
<option value="1100">1100</option>
<option value="1101">1101</option>  
</select>

</form>
</html>
```

das ist die einfache Variante die auch funktioniert. Nur wie funktioniert das ganze wenn die Values als Array zurück gegeben werden

```
<html>
<head>
<script type="text/javascript">
function disable(){
  if(document.suche.selectblock[].options[5].selected == true){
    document.suche.kt[].disabled = true;
    
  }else{
   document.suche.kt[].disabled = false;
  
  }
}

</script>

</head>
<body>
</body>
<form name="suche">


<select name="kt[]">
<option value="kt0">kt0</option>
<option value="kt1">kt1</option> 
<option value="kt2">kt2</option>
<option value="kt3">kt3</option>

</select>
<select name="selectblock[]" onClick="disable()">
<option value="60">60 </option>
<option value="120">120</option> 
<option value="240">240</option>
<option value="660">660</option>
<option value="1100">1100</option>
<option value="1101">1101</option>  
</select>

</form>
</html>
```

das funtioniert leider nicht...

Danke für eure hilfe.

mfg
Dreambaser


----------



## Quaese (21. Januar 2009)

Hi,

versuch es mal über das *elements*-Objekt.

```
function disable(){
  if(document.suche.elements["selectblock[]"].options[5].selected == true){
    document.suche.elements["kt[]"].disabled = true;
  }else{
   document.suche.elements["kt[]"].disabled = false;
  }
}
```
 
Ciao
Quaese


----------



## dreambaser (21. Januar 2009)

Guten Morgen,

danke für den Tipp jetzt funktioniert zumindest 1mal schon die funktion richtig.
Ich habe vielleicht vergessen zu schreiben, das ich ein Formular mit Feldern via Clonenode erweitere.

hier mal die funktion:


```
function addR(row){
  var newRow = row.cloneNode(true);

  // Array mit allen Inputelementen in der neuen Zeile erstellen
  var arrInput = newRow.getElementsByTagName("input");

  // Array durchlaufen
  for(var i=0; i<arrInput.length; i++){
    // Falls es sich um ein Textfeld handelt -> Inhalt löschen
    if(arrInput[i].type == "text")
	
	  arrInput[i].value = "";
  
  }
  
  
  row.parentNode.appendChild(newRow);
}
function delR(row) {
  var objTable = row.parentNode;

  // Tabellenobjekt ermitteln
  while(objTable.nodeName.toLowerCase() != "table"){
    objTable = objTable.parentNode;
  }

  // Falls nur eine Zeile enthalten ist -> Funktion ohne Löschen verlassen
  if(objTable.rows.length < 3){
	  
	  row.parentNode.removeChild(row);

  }
  
  row.parentNode.removeChild(row);
}
```

Dadurch greift allerdings die disable funktion nicht mehr, weil ich nicht weiss wie ich mit dem Clonenode umgehen soll.

Kann mir jemand helfen?


----------



## Quaese (21. Januar 2009)

Hi,

wie sieht denn der HTML-Code der Tabelle aus, deren Zeilen gecloned werden sollen?

Ciao
Quaese


----------



## dreambaser (21. Januar 2009)

Hallo,

also ich erstelle aus einer php Klasse heraus den HTML Code soweit funktioniert das ganze ohne Probleme.

Hier mal ein Auszug des ganzen:


```
$box_layout = '<table width="100%" border="0" cellpadding="0" cellspacing="0">
										<!--DWLayoutTable-->
										<tr>
										 <td width="15%" valign="middle" align="center" class="right_and_bottom_tab"><select onmouseover="this.style.cursor=\'hand\';showToolTip(event,\''.$val1.'\');return false" onmouseout="hideToolTip()" class="s3" name="art[]">
											  <option value="HM">Hausmüll</option>
											  <option value="BIO">Biogut</option> 
											</select></td>
										  <td width="27%" height="30" valign="middle" align="center" class="right_and_bottom_tab"><input type="textfield" onmouseover="this.style.cursor=\'hand\';showToolTip(event,\''.$val2.'\');return false" onmouseout="hideToolTip()" class="t2" value="01.01.'.$_SESSION['ground']['active_year'].'" name="start[]">&nbsp;<span class="smalltext">'.TOO.'</span>&nbsp;<input type="textfield" onmouseover="this.style.cursor=\'hand\';showToolTip(event,\''.$val3.'\');return false" onmouseout="hideToolTip()" class="t2" value="31.12.'.$_SESSION['ground']['active_year'].'" name="end[]"></td>
										  <td width="15%" valign="middle" align="center" class="right_and_bottom_tab"><select onmouseover="this.style.cursor=\'hand\';showToolTip(event,\''.$val4.'\');return false" onmouseout="hideToolTip()" class="s1" name="toon" onChange="disable()">
											  <option value="60">60 Liter</option>
											  <option value="120">120 Liter</option>
											  <option value="240">240 Liter</option>
											  <option value="660">660 Liter</option>
											  <option value="1100">1100 Liter</option>
											  <option value="1101">1101 Liter</option>
											</select></td>
										  <td width="6%" valign="middle" align="center" class="right_and_bottom_tab"><input type="textfield" onmouseover="this.style.cursor=\'hand\';showToolTip(event,\''.$val5.'\');return false" onmouseout="hideToolTip()" class="t8" value="'.formquest('mgb[]').'" name="mgb[]"></td>
										  <td width="5%" valign="middle" align="center" class="right_and_bottom_tab"><input type="textfield" onmouseover="this.style.cursor=\'hand\';showToolTip(event,\''.$val6.'\');return false" onmouseout="hideToolTip()" maxlength="4" class="t1" value="'.formquest('rh[]').'" name="rh[]"></td>
										  <td width="6%" valign="middle" align="center" class="right_and_bottom_tab"><input type="textfield" class="t8"onmouseover="this.style.cursor=\'hand\';showToolTip(event,\''.$val7.'\');return false" onmouseout="hideToolTip()"  value="'.formquest('epw[]').'"  name="epw[]"></td>
										  <td width="15%" valign="middle" align="center" class="right_and_bottom_tab"><select name="kt" onmouseover="this.style.cursor=\'hand\';showToolTip(event,\''.$val8.'\');return false" onmouseout="hideToolTip()" class="s1">
											  <option value="KT0">Kein KT</option>
											  <option value="KT1">KT1</option>
											  <option value="KT2">KT2</option>
											  <option value="KT3">KT3</option>
											</select></td>
										 <td width="15%" valign="middle" align="center" class="bottom_tab" nowrap><input name="button" class="submit_sm" type="button" id="inputbuttonminus" value="-" onmouseover="this.style.cursor=\'hand\';showToolTip(event,\''.DATA_MIN.'\');return false" onmouseout="hideToolTip()" onclick=\'return delR(this.parentNode.parentNode)\'>&nbsp;<input name="button" class="submit_sm" type="button" onmouseover="this.style.cursor=\'hand\';showToolTip(event,\''.DATA_MAX.'\');return false" onmouseout="hideToolTip()" id="inputbuttonplus" value="+" onclick=\'return addR(this.parentNode.parentNode)\'></td>
										</tr>
									  </table>';
```

in diesem Bereich :


```
<select onmouseover="this.style.cursor=\'hand\';showToolTip(event,\''.$val4.'\');return false" onmouseout="hideToolTip()" class="s1" name="toon" onChange="disable()">
											  <option value="60">60 Liter</option>
											  <option value="120">120 Liter</option>
											  <option value="240">240 Liter</option>
											  <option value="660">660 Liter</option>
											  <option value="1100">1100 Liter</option>
											  <option value="1101">1101 Liter</option>
											</select>
```

habe ich die funktion disable eingebaut, die auf das andere Select Element reagiert. Leider reagiert die funktion nur 1mal und sobald ich einen neuen Clone erzeuge, wird das 2. Select Element disabled.

Hast du eine Idee

Danke mfg Dreambaser


----------



## Quaese (22. Januar 2009)

Hi,

du könntest der *disable*-Funktion das auslösende Select-Element übergeben. In einer Schleife vergleichst du dieses Element mit denen der *elements*-Kollektion und ermittelst so den erforderlichen Index.

Mit Hilfe diese Index werden die erforderlichen Objekte ermittelt und aktiviert bzw. deaktiviert.

Beispiel:

```
<html>
<head>
<title>www.tutorials.de</title>
<meta name="author" content="Quaese">
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
function disable(objSel){
  var intIndex = 0;
  for(var i=0; i<document.suche.elements["toon[]"].length; i++){
    if(objSel == document.suche.elements["toon[]"][i]){
      intIndex = i;
      break;
    }
  }

  var objSel_01 = (typeof document.suche.elements["toon[]"][0].options == 'undefined')? document.suche.elements["toon[]"] : document.suche.elements["toon[]"][intIndex];
  var objSel_02 = (typeof document.suche.elements["toon[]"][0].options == 'undefined')? document.suche.elements["kt[]"] : document.suche.elements["kt[]"][intIndex];

  if(objSel_01.options[5].selected == true){
    objSel_02.disabled = true;
  }else{
    objSel_02.disabled = false;
  }
}

function addR(row){
  var newRow = row.cloneNode(true);

  // Array mit allen Inputelementen in der neuen Zeile erstellen
  var arrInput = newRow.getElementsByTagName("input");

  // Array durchlaufen
  for(var i=0; i<arrInput.length; i++){
    // Falls es sich um ein Textfeld handelt -> Inhalt löschen
    if(arrInput[i].type == "text")
      arrInput[i].value = "";
  }
  row.parentNode.appendChild(newRow);
}
function delR(row) {
  var objTable = row.parentNode;

  // Tabellenobjekt ermitteln
  while(objTable.nodeName.toLowerCase() != "table"){
    objTable = objTable.parentNode;
  }

  // Falls nur eine Zeile enthalten ist -> Funktion ohne Löschen verlassen
  if(objTable.rows.length < 3){
      row.parentNode.removeChild(row);
  }
  row.parentNode.removeChild(row);
}
</script>
</head>
<body>
<form name="suche">
	<table width="100%" border="0" cellpadding="0" cellspacing="0">
	  <!--DWLayoutTable-->
	  <tr>
	   <td width="15%" valign="middle" align="center" class="right_and_bottom_tab"><select class="s3" name="art[]">
	        <option value="HM">Hausmüll</option>
	        <option value="BIO">Biogut</option>
	      </select></td>
	    <td width="27%" height="30" valign="middle" align="center" class="right_and_bottom_tab">
	    <input type="textfield" class="t2" value="01.01.'.$_SESSION['ground']['active_year'].'" name="start[]">&nbsp;
	    <span class="smalltext">'.TOO.'</span>&nbsp;
	    <input type="textfield" class="t2" value="31.12.'.$_SESSION['ground']['active_year'].'" name="end[]"></td>
	    <td width="15%" valign="middle" align="center" class="right_and_bottom_tab">
	      <select class="s1" name="toon[]" onChange="disable(this)">
	        <option value="60">60 Liter</option>
	        <option value="120">120 Liter</option>
	        <option value="240">240 Liter</option>
	        <option value="660">660 Liter</option>
	        <option value="1100">1100 Liter</option>
	        <option value="1101">1101 Liter</option>
	      </select></td>
	    <td width="6%" valign="middle" align="center" class="right_and_bottom_tab"><input type="textfield" class="t8" value="'.formquest('mgb[]').'" name="mgb[]"></td>
	    <td width="5%" valign="middle" align="center" class="right_and_bottom_tab"><input type="textfield" maxlength="4" class="t1" value="'.formquest('rh[]').'" name="rh[]"></td>
	    <td width="6%" valign="middle" align="center" class="right_and_bottom_tab"><input type="textfield" class="t8"  value="'.formquest('epw[]').'"  name="epw[]"></td>
	    <td width="15%" valign="middle" align="center" class="right_and_bottom_tab">
      	<select name="kt[]" class="s1">
	        <option value="KT0">Kein KT</option>
	        <option value="KT1">KT1</option>
	        <option value="KT2">KT2</option>
	        <option value="KT3">KT3</option>
	      </select></td>
	   <td width="15%" valign="middle" align="center" class="bottom_tab" nowrap>
	    <input name="button" class="submit_sm" type="button" id="inputbuttonminus" value="-" onclick="return delR(this.parentNode.parentNode)">&nbsp;
	    <input name="button" class="submit_sm" type="button" value="+" onclick="return addR(this.parentNode.parentNode)"></td>
	  </tr>
	</table>
</form>
</body>
</html>
```
 
Ciao
Quaese


----------



## dreambaser (22. Januar 2009)

Hey,

danke für die zündende Idee, ich habe es eingebaut und siehe da, es funktioniert.
Vielleicht hast du ja noch ne Idee, wie man die 2 funktionen um ein paar sachen erweitern kann?

Zum einen sobald ein neuer Node eröffnet wird, werden nur die Textfelder zurück gesetzt. Wie kann ich es schaffen, das alles komplett zurück gesetzt wird?

Das ist die eine Sache die mich brennend interessiert und das andere ist, vielleicht auch recht einfach zu lösen.

Kann man die Werte die in die Felder eingetragen werden, sofort berechnen und in einem anderen Feld des Nodes ausgeben?

Also wenn ich jetzt das Textfeld mgb[] *rh[] berechne, dann ist das das Ergebnis von epw[].

Hast du da vielleicht auch ne Idee ?

Ich danke dir... Super vielen Dank

mfg
Dreambaser


----------



## Quaese (22. Januar 2009)

Hi,

ich würde für die Berechnung ähnlich vorgehen wie beim Aktivieren/Deaktivieren der Selectfelder.

Einer Berechnungsfunktion würde ich über die Referenz *this* des auslösenden Element das Objekt übergeben. 
Anhand des *name*-Attributs kann festgestellt werden, welches Objekt übergeben wurde (mgb oder rh).
Aus dem eben Ermittelten wird eine *elements*-Kollektion erstellt.
Jetzt kann der Index ermittelt werden
Nachdem die passenden Elemente erstellt wurden, kann - vorausgesetzt die Felder wurden korrekt ausgefüllt - die Berechnung erfolgen.
Die Berechnung mit Ausgabe in einem anderen Feld könnte schematisch wie folgt aussehen:

```
document.suche.ergebnis.value = Number(document.suche.feld1.value) * Number(document.suche.feld2.value)
```
 
Was genau du unter "komplett Zurücksetzen" verstehst, weiss ich nicht. Ich kann höchstens erahnen, dass du die Selectgruppen wieder zurücksetzen möchtest.

Hier zu gehst du in der Funktion *addRow* ähnlich wie bei den *input*-Feldern vor:

Zunächst erstellt du mittels der Methode *getElementsByTagName* eine Kollektion mit allen Selectfeldern
Die Kollektion wird mit einer *for*-Schleife durchlaufen
Innerhalb der Schleife wird jedes Objekt aktiviert (objekt.disabled = false) und der gewählte Index wird auf Null gesetzt (objekt.selectedIndex = 0).
Viel Erfolg beim Implementieren.

Ciao
Quaese


----------



## dreambaser (23. Januar 2009)

Hallo ,

danke für die Tips, wie man an solch eine Sache heran geht. Die Berechnung der Felder habe ich lösen können, wobei ich einen etwas komischen Weg gehen musste, bzw. nicht weiss woran das liegt, die Funktion wird erst ab dem 2. Clone richtig ausgeführt. Wenn ich das erste mal etwas in die Felder eintrage, passiert nichts, warum ist das so? Ich habe zwar das auch lösen können, indem ich einfach die Ausführung mit übernommen habe, allerdings ist das nicht gerade das beste Coding.

Hier mal die Funktion, die ich geschrieben habe:


```
function rechne(objSel){

	
	
	document.suche.elements["epw[]"].value = Number(document.suche.elements["mgb[]"].value) * Number(document.suche.elements["rh[]"].value) ;
	
	for(var i=0; i<document.suche.elements["mgb[]"].length; i++){
    
	if(objSel == document.suche.elements["mgb[]"][i]){
    
        
		document.suche.elements["epw[]"].value = Number(document.suche.elements["mgb[]"].value) * Number(document.suche.elements["rh[]"].value) ;
	
	} else {
		
		document.suche.elements["epw[]"][i].value = Number(document.suche.elements["mgb[]"][i].value) * Number(document.suche.elements["rh[]"][i].value) ;
	
		
	}
	
  }
}
```

Die 2. Sache, das die Funktion addR(row) bei jedem neuen Clone alle Felder und Select Boxes zurück setzt funktioniert irgendwie nicht, bzw. ich weiss nicht genau wie ich an die Sache heran gehen soll. Alle Versuche irgendwie was aus deinen Tips zu machen liefen bisher ins Leere.

Achso in der anderen Funktion, die Du mir gezeigt hast, ist ein Fehler drinn, den ich erst jetzt bemerkt habe. In der If Else Abfrage fragst du ja ab:


```
if(objSel_01.options[5].selected == true){
```

Dann disable die andere Selected Geschichte. Das geht ja. Das heisst der _Eintrag 5 ist 1101 dann wird die andere deaktiviert. Wenn ich jetzt aber zum beispiel den Eintrag 4 oder 3 oder 2 auswähle, dann springt automatisch immer auf den options[0] zurück. Das liegt mit Sicherheit an der If Schleife.

```
if(objSel_01.options[5].selected == true){
    objSel_02.disabled = true;
	objSel_02.className = "s1_ghost";
  } else if(objSel_01.options[1].selected = true){
	objSel_02.disabled = false;
  	objSel_02.className = "s1";
  } else if(objSel_01.options[2].selected = true){
	objSel_02.disabled = false;
  	objSel_02.className = "s1";
  }else if(objSel_01.options[3].selected = true){
	objSel_02.disabled = false;
  	objSel_02.className = "s1";
  }else if(objSel_01.options[4].selected = true){
	objSel_02.disabled = false;
  	objSel_02.className = "s1";
  }else{
	 objSel_01.options[0].selected = true;
    objSel_02.disabled = false;
  	objSel_02.className = "s1";
  }
```

So habe ich versucht alle anderen Einträge abzufragen, allerdings funktioniert das nicht richtig. Es tut mir ja leid, das ich die damit so nerve, aber Javascript ist absolut nicht meine Stärke.

Danke dir.
mfg
Dreambaser


----------



## Quaese (23. Januar 2009)

Hi,

hier eine Variante, wie ich vorgehen würde.

Zunächst würde ich eine eigene Funktion zum Ermitteln des Index erstellen. Da dieser häufiger benötigt wird, kann so der Quellcode optimiert werden.

Sonst ist mein Vorgehen wie in meinem gestrigen Beitrag beschrieben. Allerdings habe ich die Funktion *disable* in *disableIt* umbenannt, da es sonst in einigen Browsern zu Problemen führen kann.

Die Berechnung wird immer dann angestossen, wenn eins der beiden Felder mit den erforderlichen Werten verlassen wird (onblur).

Beispiel:

```
<html>
<head>
<title>www.tutorials.de</title>
<meta name="author" content="Quaese">
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
// Index eines gesuchten Objekts (objFind) in einer elements-Kollektion (objElements) ermitteln
function getIndex(objFind, objElements){
  for(var i=0; i<objElements.length; i++){
    if(objFind == objElements[i])
      return i;
  }
}

function disableIt(objSel){
  var intIndex = getIndex(objSel, document.suche.elements["toon[]"]);

  var objSel_01 = (typeof document.suche.elements["toon[]"][0].options == 'undefined')? document.suche.elements["toon[]"] : document.suche.elements["toon[]"][intIndex];
  var objSel_02 = (typeof document.suche.elements["kt[]"][0].options == 'undefined')? document.suche.elements["kt[]"] : document.suche.elements["kt[]"][intIndex];

  if(objSel_01.options[5].selected == true){
    objSel_02.disabled = true;
  }else{
    objSel_02.disabled = false;
  }
}

function calcIt(objInput){
  // Übergebenes Objekt ermitteln (mgb ODER rh)
  var objElements = (objInput.name.search(/mgb/)!=-1)? document.suche.elements["mgb[]"]
	  																									 : document.suche.elements["rh[]"];
  // Index ermitteln
  var intIndex = getIndex(objInput, objElements);

  // Die passenden Objekte generieren
  var objMGB = (typeof document.suche.elements["mgb[]"][0] == 'undefined')? document.suche.elements["mgb[]"] : document.suche.elements["mgb[]"][intIndex];
  var objRH  = (typeof document.suche.elements["rh[]"][0] == 'undefined')? document.suche.elements["rh[]"] : document.suche.elements["rh[]"][intIndex];
  var objEPW = (typeof document.suche.elements["epw[]"][0] == 'undefined')? document.suche.elements["epw[]"] : document.suche.elements["epw[]"][intIndex];

  // Falls die erforderlichen Felder ausgefüllt sind -> Berechnung starten und ausgeben
  if((objMGB.value!="")&&!isNaN(objMGB.value)&&(objRH.value!="")&&!isNaN(objRH.value)){
  	objEPW.value = Number(objMGB.value) * Number(objRH.value);
  }
}

function addR(row){
  var newRow = row.cloneNode(true);

  // Array mit allen Inputelementen in der neuen Zeile erstellen
  var arrInput = newRow.getElementsByTagName("input");

  // Array durchlaufen
  for(var i=0; i<arrInput.length; i++){
    // Falls es sich um ein Textfeld handelt -> Inhalt löschen
    if(arrInput[i].type == "text")
      arrInput[i].value = "";
  }

  // Array mit allen Selects erstellen
  arrInput = newRow.getElementsByTagName("select");
  // Array durchlaufen
  for(var i=0; i<arrInput.length; i++){
    // Select enablen
    arrInput[i].disabled = false;
    // Index zurücksetzen
    arrInput[i].selectedIndex = 0;
  }

  row.parentNode.appendChild(newRow);
}

function delR(row) {
  var objTable = row.parentNode;

  // Tabellenobjekt ermitteln
  while(objTable.nodeName.toLowerCase() != "table"){
    objTable = objTable.parentNode;
  }

  // Falls nur eine Zeile enthalten ist -> Funktion ohne Löschen verlassen
  if(objTable.rows.length < 3){
    row.parentNode.removeChild(row);
  }

  row.parentNode.removeChild(row);
}
</script>
</head>
<body>
<form name="suche">
	<table width="100%" border="0" cellpadding="0" cellspacing="0">
	  <!--DWLayoutTable-->
	  <tr>
	   <td width="15%" valign="middle" align="center" class="right_and_bottom_tab"><select class="s3" name="art[]">
	        <option value="HM">Hausmüll</option>
	        <option value="BIO">Biogut</option>
	      </select></td>
	    <td width="27%" height="30" valign="middle" align="center" class="right_and_bottom_tab">
	    <input type="textfield" class="t2" value="01.01.'.$_SESSION['ground']['active_year'].'" name="start[]">&nbsp;
	    <span class="smalltext">'.TOO.'</span>&nbsp;
	    <input type="textfield" class="t2" value="31.12.'.$_SESSION['ground']['active_year'].'" name="end[]"></td>
	    <td width="15%" valign="middle" align="center" class="right_and_bottom_tab">
	      <select class="s1" name="toon[]" onChange="disableIt(this)">
	        <option value="60">60 Liter</option>
	        <option value="120">120 Liter</option>
	        <option value="240">240 Liter</option>
	        <option value="660">660 Liter</option>
	        <option value="1100">1100 Liter</option>
	        <option value="1101">1101 Liter</option>
	      </select></td>
	    <td width="6%" valign="middle" align="center" class="right_and_bottom_tab"><input type="textfield" class="t8" onblur="calcIt(this);" value="10" name="mgb[]"></td>
	    <td width="5%" valign="middle" align="center" class="right_and_bottom_tab"><input type="textfield" maxlength="4" class="t1" onblur="calcIt(this);" value="20" name="rh[]"></td>
	    <td width="6%" valign="middle" align="center" class="right_and_bottom_tab"><input type="textfield" class="t8"  value="'.formquest('epw[]').'"  name="epw[]"></td>
	    <td width="15%" valign="middle" align="center" class="right_and_bottom_tab">
      	<select name="kt[]" class="s1">
	        <option value="KT0">Kein KT</option>
	        <option value="KT1">KT1</option>
	        <option value="KT2">KT2</option>
	        <option value="KT3">KT3</option>
	      </select></td>
	   <td width="15%" valign="middle" align="center" class="bottom_tab" nowrap>
	    <input name="button" class="submit_sm" type="button" id="inputbuttonminus" value="-" onclick="return delR(this.parentNode.parentNode)">&nbsp;
	    <input name="button" class="submit_sm" type="button" value="+" onclick="return addR(this.parentNode.parentNode)"></td>
	  </tr>
	</table>
</form>
</body>
</html>
```
Ciao
Quaese


----------

