2010-08-20 6 views
5

Ich muss durch alle Kontrollkästchen, um Schleife, die Schleife durch alle Kontrollkästchen, die in einem div-Tag sind

abc123

in einem div-Tag mit der ID # sind Wie kann ich dies tun?

$("#abc123").foreach(????) 

aktualisieren meine HTML-Zeile wie folgt aussieht:

<tr> 
<td><input .../> </td> 
<td>234</td> 

</tr> 

ich den Wert des <td> in die ID der Checkbox hinzufügen müssen.

Würde ich nur die Eltern bekommen, dann Vorfahren es irgendwie?

Antwort

7
$("#abc123 input[type=checkbox]").each(function() 
    { 

    }); 

UPDATE:

Ok, sehen Let'd wenn ich diese gerade bekam. Gegeben:

<tr> 
<td><input .../> </td> 
<td>234</td> 
</tr> 

Sie wollen das Ergebnis (effektiv) sein

<tr> 
<td><input id="abc234" .../> </td> 
<td>234</td> 
</tr> 

$("td input[type=checkbox]").each(function() 
{ 
    var id = $(this).next("td").text(); 
    $(this).attr("id", "abc"+ id); 
}); 
+0

siehe mein Update, ist es nur .parent(). und dann gehe ich irgendwie zum nächsten Element? – Blankman

5
$("#abc123 input[type=checkbox]").each(function() { 
    $(this).dosomething(); 
}); 
0

Verwenden Sie ein onkeydown Veranstaltung ... Ich empfehle die Tabulatortaste, die keycode "9"

$(document).keydown(function(e){ 
    if(event.keyCode == '9'){ 
    ... 
} 

ist Innerhalb der if statement benötigen Sie eine nested if statement, die überprüft, welches Element im Fokus ist und dann den Fokus auf das nächste Element wie folgt zuweist:

document.div.id.focus(); 
0

Sie haben nicht in Ihrem Code #abc123 beschriftet. Haben die <td> Tags auch eine Identifikation? Folgendes könnte funktionieren.

$("#abc123 input:checkbox").each(function(i) { 
    id = $(this).closest('td').next('td').text(); 
    $(this).attr('id', id); 
}); 

Ich bin nicht sicher, wie tief die <div id="abc123"> ist in den <td> so habe ich den nächsten() -Methode zur Zelle Wrapper zu bekommen. Wenn es nur 1 tief ist, d. H. Es gibt keine <div>, wie es in Ihrem Code erscheint, dann können Sie einfach parent() verwenden. Viel Glück.

Verwandte Themen