jQuery div in div mit id anhängen und manipulieren
Lesezeit: 2 Minuten
pelelive
Nach 2 Stunden Suche entschied ich mich, meine Frage zu stellen.
Ich habe ein Div:
<div id="box"></div>
Ich möchte ein div innerhalb des obigen div mit jQuery hinzufügen.
Ich habe versucht (folgender Code ist in einer Funktion):
var e = $('<div style="display:block; float:left;width:'+width+'px; height:'+height+'px; margin-top:'+positionY+'px;margin-left:'+positionX+'px;border:1px dashed #CCCCCC;"></div>');
$('div', e).attr('id', 'myid');
$("#box").append(e);
Aber zugreifen $("#myid") funktioniert nicht.
Irgendeine Idee, wie man ein Div innerhalb eines Div hinzufügt und sie manipulieren kann?
Es ist einfach die falsche Reihenfolge
var e = $('<div style="display:block; float:left;width:'+width+'px; height:'+height+'px; margin-top:'+positionY+'px;margin-left:'+positionX+'px;border:1px dashed #CCCCCC;"></div>');
$('#box').append(e);
e.attr('id', 'myid');
Zuerst anhängen und dann auf attr zugreifen/setzen.
Warum drei Codezeilen verwenden, wenn nur eine benötigt wird? Warum die ID nachträglich anhängen, wenn sie einfach direkt in den Quell-HTML eingefügt werden kann?
– jfriend00
27. Oktober 2011 um 6:46 Uhr
Ich versuche nur, das ursprüngliche Problem zu lösen, nicht, es zu verbessern.
– Moe Süß
27. Oktober 2011 um 21:29 Uhr
Ich hatte gehofft, dass das OP sehen würde, dass es einen verbesserten Weg gibt, dies zu tun.
– jfriend00
27. Oktober 2011 um 21:47 Uhr
Du verkomplizierst die Dinge zu sehr:
var e = $('<div style="display:block; float:left;width:'+width+'px; height:'+height+'px; margin-top:'+positionY+'px;margin-left:'+positionX+'px;border:1px dashed #CCCCCC;"></div>');
e.attr('id', 'myid');
$('#box').append(e);
Hinweis: Ich habe die id="myid" direkt in den HTML-String, anstatt separaten Code zu verwenden, um ihn festzulegen.
Beide .html() und .append() jQuery-Methoden können eine HTML-Zeichenfolge verwenden, sodass kein separater Schritt zum Erstellen der Objekte erforderlich ist.
var e = $('<div style="display:block; id="myid" float:left;width:'+width+'px; height:'+height+'px; margin-top:'+positionY+'px;margin-left:'+positionX+'px;border:1px dashed #CCCCCC;"></div>');
$("#box").html(e);
11369500cookie-checkjQuery div in div mit id anhängen und manipulierenyes