Frage

Es ist 5 Stunden her, seit ich mit diesem kämpfte, ich suchte nach oben und hinunter.Ich versuche, den Tabellenzellenhintergrund zu ändern, der ein überprüftes Radio enthält. Ich schaffe es, den Hintergrundklasse hinzuzufügen, aber ich kann den Hintergrund nicht entfernen, wenn nicht geprüft wird.

Hier ist der Code, den ich verwende:

http://jsfiddle.net/cewbw

Jedenfalls, um die Hintergrundklasse nach dem Funkgerät zu entfernen, ist nicht geprüft?Ich habe es nicht geschafft, es zu tun. Danke!

War es hilfreich?

Lösung

$("td input:not(:checked)") binds the event only to unchecked elements.

Bind it to all td input elements and use this.checked inside the callback to access the checked state.

Here's an example: http://jsfiddle.net/ceWbW/5/

$("td input").change(function () {
    var $this = $(this);
    var td = $this.parent();
    // un-green all columns which contain a radio element from the same group
    td.siblings().filter(function() {
        return !!$(this).find('input[name="'+$this.attr('name')+'"]:radio').length;
    }).removeClass('green');
    // green the current column in case the radiobox is enabled
    if(this.checked) {
        td.addClass('green');
    }
});
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top