2

祖父母の要素からテキストを取得するようにこの関数を変更しようとしています

span.html(checked.map(function () { return $(this).parent().text(); }).get().join());

これらの関数は両方とも、祖父母のテキストとその兄弟要素(<div class=CheckMark>)のテキストを返します。祖父母要素からのテキストのみを返すように変更するにはどうすればよいですか?

span.html(checked.map(function () { return $(this).parent().parent().text(); }).get().join());

span.html(checked.map(function () { return $(this).parents(':eq(1)').text(); }).get().join());

HTML

<li><a href="#">
    <label onclick="toggle_colorbox_alt(this.children[0]);">
        <div style="background-color: #000000" class="color">
            <div class=CheckMark>&#10003;</div>
            <input type="checkbox" name="color[]" value="value" class="cbx"/>
        </div>
        Text I Want
    </label>
</a></li>
4

1 に答える 1

3

labelあなたはその子供たちを除いたテキストを手に入れたいようです。

あなたはこれを行うことができます :

var p = $(this).closest('label').clone();
p.children().remove();
var txt = p.text();

またはより短い連鎖的な方法で:

var txt = $(this).closest('label').clone().children().remove().end().text();

デモンストレーション

于 2013-03-07T17:11:38.490 に答える