Also so funktionierts bei mir.
Ich glaube nicht, dass du auf deinen Fehler im Javascript gekommen wärst darum erkläre ich ihn dir unter dem Code.
PHP-Code:
<html>
<head>
<script src="on_change.js" type="text/javascript"></script>
</head>
<body>
<select onchange="wechsel('email', this);">';
<option value="none">---Bitte Wählen---</option>
<?PHP
$i = 0;
while ($i < 5)
{
echo '<option value="' . $i . '">' . $i . '</option>';
$i++;
}
?>
</select>
<input type="text" id="email" name="email" value="">
</body>
</html>
PHP-Code:
function wechsel(email, form) {
document.getElementById(email).value = form.value;
}
Dein Fehler
PHP-Code:
function wechsel(email) {
document.getElementById(email).value=this.value;
}
Du schreibst dort "this.value".
Mit this berufst du dich auf die Funktion selbst und nicht aud das HTML Element über dessen Eventhandler du die Funktion aufgerufen hast.
Du musst den Wert, bzw. das Objekt auf eine andere Art mitgeben. Darum
HTML-Code:
<select onchange="wechsel('email', this);">';
übergibtst du die Referenz auf das HTML Element auf diese Weise.