Archiv verlassen und diese Seite im Standarddesign anzeigen : Aktion auslösen durch Auswahl in Dropdownfeld
Kangarooo 18-01-2010, 18:15 Hallo! Ich habe ein Dropdownfeld mit JA und NEIN! NEIN ist die Standardauswahl! sobald ich aber JA auswähle, soll unter dem Dropdown ein Textfeld angezeigt werden! Kann mir da jemand helfen?? ich habe es bis jetzt nur geschafft, per Link textfelder hinzuzufügen! Dass habe ich so gelöst, indem ich eine DIV Box sichtbar mache. Aber wie mache ich dass mit Dropdown?
Ist das Textfeld schon vorhanden und muss nur noch gezeigt werden, oder nicht? Btw: ein wenig Code würde helfen. Ansonsten arbeitest du mit onchange beim select-Element.
Peter
Kangarooo 18-01-2010, 18:24 Ja wie ist mir eigentlich egal!
Nehmen wir an das Textfeld ist schon vorhanden!
<input type="hidden" name="bildname">
dann habe ich mir halt vorgetselllt, wenn ich JA auswähle, dass der type auf "text" gesetzt wird und das feld somit sichtabr ist!
Warum so kompliziert? Versteck das Feld mittels display: none und setz es dann auf display: block. Ansonsten musst du über DOM (http://www.peterkropff.de/site/javascript/attributknoten.htm) arbeiten.
Peter
Kangarooo 18-01-2010, 18:30 Ja, das ist ne gute Idee!! Aber ich weiß nicht so rehct, wie die funktion aussshene soll! Weil ich habe es bisher nur mit einem DIV geschafft, das einzublenden, aber wie mache ich das mit NUR einem Textfeld? ich hätte nur noch ne möglichkeit, weil dass textfeld befindet sich in einem SPAN tag! hilft das weiter?
Entweder verpasst du dem Textfeld eine ID und arbeitest mit document.getElementById (wahrscheinlich so wie du es beim div gemacht hast) oder du greifst per
document.formularname.textfeldname
darauf zu.
Peter
Kangarooo 18-01-2010, 18:41 Und über den SPAN Tag? weil das wäre besser, da noch Text vor dem Textfeld steht, un der soll natürlich auch nur eingeblendte werden wenn ich JA auswähle! So sieht mein Code aus...ist wahrscheinlich nicht sooo richtig..es passiert nichts!
<span>
<label for="leistungstraeger">Leistungstraeger</label>
<select name="leistungstraeger" id="leistungstraeger" onchange="showtext()">
<option value="nein">Nein</option>
<option value="ja">Ja</option>
</select>
</span>
<span id="leistungslogo" style="display:none;">
<label for="leistungslogo">Leistungstraeger Logo</label>
<input type="text" name="leistungslogo" id="leistungslogo" />
</span>
und so mein Javascript:
<script type="text/javascript">
function showtext() {
var inserttext = $('#leistungslogo').html();
var showvar = display;
var neues_template = inserttext.replace(/display:none/g, showvar);
}
</script>
Warum nutzt hier eigentlich jeder für so einen pillepups gleich ein Framework? Sorry, musste mal raus.
function showtext()
{
if(1 == document.formularname.leistungstraeger.selectedIndex)
{
if (document.getElementById('leistungslogo').style.display = 'none')
{
document.getElementById('leistungslogo').style.display = 'inline';
}
}
}
Ungetestet und nur zur Anschauung. Die Fehlerbehandlung musst du selber einbauen.
Peter
Kangarooo 18-01-2010, 18:52 Wahnsinn, genau das meinte ich! Vielen Dank für deine Hilfe!!!!!!!
Kangarooo 18-01-2010, 18:54 Vielleicht könntest du mir nopch kurz erkären was dass hier bedeutet:
if(1 == document.anlegung.leistungs........
Warum 1== ??
Wenn der Index 1 ausgewählt ist, dann...
Zählung fängt wie bei Arrays bei 0 an.
Übrigens, muss man nicht jeden Satz mit einem Ausrufezeichen beenden!
Wenn der Index 1 ausgewählt ist, dann...
Zählung fängt wie bei Arrays bei 0 an.
Ich glaube, er meint die Reihenfolge, also warum kein
if(document.formularname.leistungstraeger.selectedIndex == 1)
Damit vermeidet man den klassischen Anfängerfehler:
if(document.formularname.leistungstraeger.selectedIndex = 1)
Peter
Kangarooo 18-01-2010, 21:27 Ahhhh sehr gut!!! Und warum fängt es mit 1 an und nicht mit 0?
Tut es nicht.
Und du gewöhnst dir jetzt bitte endlich mal an, dich selber zu informieren, bevor du fragst!
SELFHTML: JavaScript / Objektreferenz / options (http://de.selfhtml.org/javascript/objekte/options.htm#selected_index)
Wer lesen kann ist klar im Vorteil! Hatte ich das nicht schon erwähnt? :teach:
Kangarooo 18-01-2010, 21:47 JO ist ja gut! Danke für die Hilfe!
JO ist ja gut!
Das werden wir bei deiner nächsten Frage sehen.
... grad noch rechtzeitig editiert, gell. ;)
Kangarooo 18-01-2010, 21:57 Naja, ist ja so! Ist ja ein Forum...wer nicht antworten will muss ja nicht, ich will ja niemanden nerven,
Kürzen wir die Sache ab, ein Forum hat Regeln und wer sich nicht dran hält, hat auch kein Recht auf die Teilnahme. Aber es ist ja noch mal gut verlaufen. Viel Erfolg weiterhin.
<end off topic>
|