Wie definiere ich hier einen Input in createElement( )
amel
- dhtml
Ok Ich habe diese Formel benutzt um dynamische Tabellen zu erstellen in denen ich in die zellen Input-Felder einbaue! Nun mache ich das mit dieser Formel nur ich kann diesem Input dann aber keinen eindeutigen ID zuordnen der aber sehr wichtig ist damit ich dann später auf diese Felder zugreifen kann.
Hier ein Auszug aus meiner Script-Datei:
var TD1 = document.createElement("td");
var TD1T = document.createElement("input");
TD1.appendChild(TD1T);
TR.appendChild(TD1);
und nach diesem macht er ein Datenfeld in die Tabelle, nur das Datenfeld hat keinen ID so kann ich nicht darauf zugreifen. Wenn ich aber schreibe:
var TD1T = document.createElement("input id='a'"); dann zeigt er keinen Fehler aber auch kein Input-Feld?!? Vielleicht ist es möglich dass ich diese Inputs extern irgendwie definiere nur ich weiß nicht wie?! BITTE um Eure Hilfe. DANKE!
Gruß.
und nach diesem macht er ein Datenfeld in die Tabelle, nur das Datenfeld hat keinen ID so kann ich nicht darauf zugreifen. Wenn ich aber schreibe:
var TD1T = document.createElement("input id='a'"); dann zeigt er keinen Fehler aber auch kein Input-Feld?!?
Salut
Die ID deines Inputfeldes ist ein Attribut von deinem input Feld.
Attribute kann man mit der Methode
TD1T.createAttribute("id", "irgendeinname");
definieren. Auch in SelfHTML findest du einiges über diese Methode.
Gruss
Schorsch
ok super DANKE!!
Wow die Antworten kommen hier immer so schnell!! :-)
Gruß Amel.
und nach diesem macht er ein Datenfeld in die Tabelle, nur das Datenfeld hat keinen ID so kann ich nicht darauf zugreifen. Wenn ich aber schreibe:
var TD1T = document.createElement("input id='a'"); dann zeigt er keinen Fehler aber auch kein Input-Feld?!?Salut
Die ID deines Inputfeldes ist ein Attribut von deinem input Feld.
Attribute kann man mit der Methode
TD1T.createAttribute("id", "irgendeinname");
Ist das sicher dass hier 2 Parameter übergeben werden?!? Hier ist mein Script noch einmal. kannst du mir sagen wo ich das jetzt reinschreiben soll! es soll ja den ID von der Zelle haben, denk ich!!
var TD1 = document.createElement("td");
var TD1T = document.createElement("input");
var TD1A = document.createAttribute("id");
TD1A.nodeValue = "a";
TD1.setAttributeNode(TD1A);
var TD2 = document.createElement("td");
var TD2T = document.createElement("input");
var TD3 = document.createElement("td");
var TD3T = document.createElement("input");
TD1.appendChild(TD1T);
TD2.appendChild(TD2T);
TD3.appendChild(TD3T);
TR.appendChild(TD1);
TR.appendChild(TD2);
so funzts nicht aber es zeigt auch keine Fehler?!
TR.appendChild(TD3);
Hier ist mein Script noch einmal. kannst du mir sagen wo ich das jetzt reinschreiben soll!
var TD1 = document.createElement("td");
var TD1T = document.createElement("input");
var TD1A = document.createAttribute("id" );
--------------------------------------------^
Ein Attribut hat ja quasi zwei Dinge: Attributsname und Wert.
Folgich musst du auch zwei Dinge angeben!
Hast du nachgelesen, was man so über "createAttribute" schreibt?
Nicht? Dann schau mal unter "setAttribute" nach...
Gruss
Schrosch
hi,
Wenn ich aber schreibe:
var TD1T = document.createElement("input id='a'"); dann zeigt er keinen Fehler aber auch kein Input-Feld?!?
natürlich, denn das ist ja auch nicht der richtige parameter für createElement.
die ID ist ein html-attribut - also was liegt näher, auch ein solches zu erstellen bzw. zu setzen?
entweder
http://selfhtml.teamone.de/javascript/objekte/node.htm#set_attribute
oder
http://selfhtml.teamone.de/javascript/objekte/document.htm#create_attribute
gruss,
wahsaga