• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

ID aus Elternklasse auslesen und automatisch in Checkbox einfügen (jquery + UI)

kleinerkeel

New member
HTML:
<section id="finished">
<ul class="connectedSortable ui-sortable">
<li id="task_32">
<input class="css-checkbox" type="checkbox" name="check_undefined" id="chk_undefined"> 
//Diese Zeile wird nachträglich eingefügt (undefined soll durch die ID ersetzt werden)
<div class="moveRight">Kinder in den Kindergarten bringen</div>
</li>
</ul>
</section>

Hallo Community,
ich hab mal eine Frage, an der ich mich grade ziemlich aufhalten. Vielleicht hätte jemand von Euch mal eine Antwort für mich.

Ich arbeite grade an einer sortierbaren Liste via jQuery-UI nach obigem Beispiel. Die Checkboxen werden in die LI`s via jQuery nachträglich eingesetzt - es soll allerdings jeder Checkbox auch eine ID nach dem Muster:
check_ + ID des Parent LI-Elementes bekommen

HTML:
var cb = $('<input class="css-checkbox" type="checkbox" />');
Code:
 $(cb).prependTo('#todo ul li, #finished ul li').attr('name', 'check_' + $(this).parents('li').attr('id')).attr('id', 'check_' + $(this).parent('li').attr('id'));
es greift weder parent() noch parents() und weder mit Angabe des Elementes noch ohne

ich möchte innerhalb der Checkbox automatisch die id des Parents (des LI-Elementes) auslesen, und die ID in die Checkboxen mit dem Prefix "check_" einfügen. Wie muss ich vorgehen?

So sollte es nachher aussehen:
HTML:
<input class="css-checkbox" type="checkbox" name="check_32" id="check_32">
Vielen Dank für Eure Hilfe

- - - Aktualisiert - - -

muss ich evtl. mit einer Schleife die LI-Elemente durchlaufen? Wie muss der Schleifeninhalt dann aussehen:
Code:
var li = $('li');
       $.each(li, function(idx, val) {
           // was muss hier rein?
       });
 
Zuletzt bearbeitet:
Probier es mal so:

PHP:
var cb = $('<input class="css-checkbox" type="checkbox" />');

$('#todo ul li, #finished ul li').prepend(cb); 

var id = 'check_' + cb.parents('[id^=task_]').attr('id'); 

cb.attr({ 
  name: id, 
  id: id 
});
 
Zurück
Oben