Löschen von input-feldern

droni

Erfahrenes Mitglied
Hallo,

Ich möchte ein Input-Feld was erstmal auf disable steht bei einer bestimmten Auswahl einer Select-Liste enablen.
Dazu habe ich folgendes im Web gefunden:

Code:
<script type="text/javascript">

function disable_input(obj, input_id, option_value) {
  var input_obj = document.getElementById(input_id);

  if (input_obj) {
    input_obj.disabled = !(obj.value == option_value);
  if (input_obj.value == 'option_value') input_obj.value = '';
  }
}
</script>

Aufgerufen wird das ganze mit
Code:
<select name="test" id="test"  onchange="disable_input(this, 'inputfeld_zum_enablen', '3');">
Also wenn der Value Wert der Select 3 ist, wird das Input-Feld enabled.

Soweit bin ich nun und das ganze funktioniert auch soweit.
ABER: Wenn ich bei dem Select den Value 3 auswähle, etwas in das Input-Feld schreibe und es mir dann doch anders überlege und das Select-Feld verändere,
wird das Input-Feld zwar wieder disabled, aber der Wert bleibt natürlich noch drin.
Kann man die Funktion so erweitern, dass der Inhalt dann auch mit gelöscht wird?

Vielen Dank!

MfG
droni
 
Hi,

du prüfst an dieser Stelle
Code:
if (input_obj.value == 'option_value')
ob der Wert des Inputfeldes gleich der Zeichenkette "option_value" ist.

Richtig wäre, zu prüfen, ob der Wert der selektierten Option ungleich dem Inhalt der Variablen option_value ist:
Code:
if (obj.value != option_value) input_obj.value = '';

Ciao
Quaese
 
Zurück