Archiv verlassen und diese Seite im Standarddesign anzeigen : Javascript: Funktionsparameter
Marscel
2005-08-26, 19:01:31
Ich will eine Funktion bauen, die es ermöglichen soll, in einem bestimmten Formular ein bestimmtes Feld zu aktivieren.
Das Script sieht bis jetzt so aus:
function enableField(form, field)
{
//alert(field);
document.form.field.disabled=false;
}
Wenn ich das so aufrufe:
<form action="?" method="post" name="form1">
...
< ... onClick="enableField(form1, submit)" ...>
...
< ... name="submit" ... >
Sollte er eigentlich den Button mit dem Namen "submit" im Formular "form1" aktivieren, aber leider funktioniert das nicht, der IE meckert beim Klicken aber u.A:
'document.form.field' ist kein Objekt oder Null
Da werden die Parameter von der Funktion nicht richtig geschluckt oder sind im falschen Type (keine Objekte).
Wie macht man das richtig?
welchen Namen hat denn das Feld, das du aktivieren möchtest? Also name="" Attribut?
document.getElementsByName(field)[0].disabled = false;
So wie du das machst sucht er nach einem Objekt namens "field"
Abgesehen davon greifst du auf "form" zu, also generell alle Formulare. Da müßte wennschon dennschon form1 stehen. ;)
Marscel
2005-08-26, 19:34:34
welchen Namen hat denn das Feld, das du aktivieren möchtest? Also name="" Attribut?
Wie ich sagte, das Feld, das ich deaktivieren möchte heißt "submit" (name="submit"), das seinerseits im Formular "form1" steckt.
document.getElementsByName(field)[0].disabled = false;
Funktioniert auch nicht.
So wie du das machst sucht er nach einem Objekt namens "field"
Ich gedachte eigentlich, dass er "field" als Parameter übernehmen würde,
denn
field.disabled = false;
funktioniert! Nur kann ich dann nicht sagen, in welchem Forumlar der Button aktiviert wird.
Abgesehen davon greifst du auf "form" zu, also generell alle Formulare. Da müßte wennschon dennschon form1 stehen. ;)
Auch hier wieder ein Parameter, der durch das
onClick="enableField(form1,...)" ja definiert werden sollte.
Auch hier wieder ein Parameter, der durch das
onClick="enableField(form1,...)" ja definiert werden sollte.
Öhm. Nenn das in der Funktion ma anders.
myForm und myField.
Marscel
2005-08-26, 19:55:33
myForm und myField.
Funktioniert leider auch nicht.
Sphinx
2005-08-26, 22:09:32
<script type="text/javascript">
function enableField() {
document.getElementById('add').disabled=true;
}
</script>
onclick="enableField()"
<input type="submit" value="Submit News" id="add" name="add" />
Marscel
2005-08-27, 00:00:34
Ich wollte eigentlich eine Funktion, die man so flexibel wie möglich nutzen kann, aber du hast mich auf eine Idee gebracht, die ich ausprobieren werde.
Aqualon
2005-08-27, 10:41:48
Falls das OnClick zufällig in einem option-Tag definiert ist, das mag der IE nicht und ignoriert es einfach.
Aqua
Sphinx
2005-08-27, 11:28:15
Falls das OnClick zufällig in einem option-Tag definiert ist, das mag der IE nicht und ignoriert es einfach.
Aqua
^^ Dies habe ich dann im select-Tag "onchange" gelöst ~ abfrage des wertes mit "this.options[this.selectedIndex].value" wenn(if) Wert gegeben führe Funktion aus
so gelöst.
<select onchange="if (this.options[this.selectedIndex].value=='2005') {FuntionSet('italictxt','I');}">
<option...
Marscel
2005-08-27, 12:19:06
Falls das OnClick zufällig in einem option-Tag definiert ist, das mag der IE nicht und ignoriert es einfach.
Nein, das ist in nem Input-Tag.
vBulletin®, Copyright ©2000-2024, Jelsoft Enterprises Ltd.