Hallo,
ich versuche gerade, ein Formulatfeld zur Laufzeit zu erzeugen. Ich (JS-Einsteiger) habe das schonmal geschafft, aber hier gibt es ein paar Haken, die ich nicht gelöst bekomme.
Es geht um eine JQuery Combobox, die folgenden Javascriptcode benötigt:
<script type='text/javascript'>
<!--
jQuery(function () {
jQuery('#combo').combobox([
'Eintrag 1',
'Eintrag 2',
'Eintrag 3',
'Eintrag 4'
]);
});
//-->
</script>
Das Inputfeld sieht so aus:
<INPUT id='combo' TYPE=TEXT Name='inhalt[]' class='f2' value=''>
Daraufhin erscheint ein Inputfeld mit Dropdown als "Ausfüllhilfe", das o.g. Einträge 1-4 beinhaltet.
Ich würde gerne auf einen Klick hin ein, bzw. mehrere weitere dieser Inputfelder mit Dropdown erzeugen.
Bisher gelingt mir das Erzeugen weiterer Inputfelder, die aber NICHT diese Dropdownerweiterung beinhalten.
Ich versuche das wie folgt:
<script type="text/javascript">
function clonen(){
var el = document.createElement("input"); //ein Input-Tag soll erstellt werden
el.name = "inhalt[]"; // Attribut name="inhalt[]" soll gesetzt werden
el.type = "text"; // Attribut type="text" soll gesetzt werden
el.id = "combo2"; // Attribut id="combo" soll gesetzt werden
el.className = "f2"; // Attribut id="combo" soll gesetzt werden
document.getElementById("container").appendChild(el); // setzt es in den DIV-Container
var br = document.createElement("br");
document.getElementById("container").appendChild(br);
}
</script>
Dann rufe ich über den eventhandler onclick auf und es passiert folgendes:
- Inputelement wird erzeugt
- Es ist ein Text-Input
- Ob die ID zugewiesen wird, weiß ich ehrlich gesagt nicht.
- Die Klasse 'f2' wird dem Element zugewiesen.
2 Probleme habe ich:
-
Mir fehlt noch die Idee, wie ich den "combo2-Inhalt", also den Part "jQuery('#combo2').combobox([ usw." generieren kann. Oder noch besser eine Idee, wie ich auf den #combo-Inhalt mit dem generierten Formularfeld zugreifen kann. (Ich hoffe, Ihr wißt ungefähr, was ich damit meine???)
-
Selbst wenn ich in den Code statisch den "jQuery('#combo2').combobox([ usw." Teil eingefügt habe, greift das dynamisch erzeugte Element nicht darauf zu. Velleicht hat die ID-Zuweisung nicht funktioniert??
Wer kann und will mir dabei helfen?
Heinz