Formular - Radiobutton mit Textfeld kombiniert: Wert aus Textfeld

jazde86

Grünschnabel
Hi,

ich habe mir ein Formular erstellt und darin einen Radiobutton mit einem Textfeld kombiniert. Diese Radiobuttons stellen die Wahl eines Betreffs beim Versand per E-Mail dar. Nun wird aber beim Versand des Formulares immer nur der Wert aus dem Radiobutton - also "on" versendet und der Inhalt des Textfeldes ignoriert.

Hier mein Code:
Code:
<form name="Formular" action=".../mail.pl" method="post" onsubmit="return chkFormular()">
<input type="hidden" name="return" value=".../mail.php">
<input type="hidden" name="delimiter" value=": ">

  <table border="0" cellpadding="0" cellspacing="4">	
    <tr>
		<td align="right" valign="top">Betreff:</td>
		<td>
		<input type ="radio" name="subject" id="fb" value="Kontaktformular - Feedback"> Feedback<br />
		<input type ="radio" name="subject" id="rother" onclick="document.Formular.other.focus()"> Sonstiges: <input type="text" name="subject" id="other" onfocus="document.Formular.rother.checked = true" size="25">
		</td>
	</tr>
	<tr>
	<td></td>
		<td><input type="submit"><input type="reset"></td>
	</tr>
  </table>
</form>

Am liebsten würde ich nun bei Auswahl vom letzten Radiobutton als Wert folgendes haben:
Code:
Kontaktformular - <Vom Benutzer in das Textfeld eingegebener Betreff>

Im head habe ich schon folgendes versucht, aber da wird der Wert nur im Browser gespeichert und beim Versand dennoch "on" per value aus name="subject" übergeben:

Code:
function chkFormular () {
  if (document.Formular.rother.checked == true) {
  document.Formular.subject.value = document.getElementById('other').value;
  document.write(document.Formular.subject.value);
  }
}

Ist dieses möglich und vorallem wie?
 
Zuletzt bearbeitet:
Code:
<html>
<head>
<title>Test</title>
<script type="text/javascript">
function checkRadio()
{
 	var radio = document.getElementById("rother");
	if (radio.checked){
	    radio.value = document.getElementById("other").value;
	}
	document.Formular.submit();
	
}
</script>
<form name="Formular" action=".../mail.pl" method="post" >
<input type="hidden" name="return" value=".../mail.php">
<input type="hidden" name="delimiter" value=": ">
 
  <table border="0" cellpadding="0" cellspacing="4">    
    <tr>
        <td align="right" valign="top">Betreff:</td>
        <td>
        <input type ="radio" name="subject" id="fb" value="Kontaktformular - Feedback"> Feedback<br />
        <input type ="radio" name="subject" id="rother" onclick="document.Formular.other.focus()"> Sonstiges: <input type="text" name="subject" id="other" onfocus="document.Formular.rother.checked = true" size="25">
        </td>
    </tr>
    <tr>
    	<td><a href="javascript:checkRadio()">Submit</a></td>
        <td><a href="javascript:document.Formular.reset()">Reset</a></td>
    </tr>
  </table>
</form>
</body>
</html>

Anstatt der Buttons Links mit Aufruf der entsprechenden Javascriptfunktionen. In der verarbeitenden Datei dann das value des aktiven Radiobuttons auslesen.
 
Hey danke, das funktioniert super. Habe bloß einen Teil der function checkRadio() in meine vorhandene Überprüfungsfunktion mit eingebaut und das war es schon. Genial, herzlichen Dank!
 

Neue Beiträge

Zurück