0

だから私はこのようなものを持っています:

<span class="a"> Contents <span class="b">Herp</span><br></span>

... 「コンテンツ」は、文字列から単一の画像複数の改行までさまざまです。b.span と br を取得せずに、「内容」を変数として定義する必要があります。

どのようにしますか?事前にどうもありがとうございました!

4

6 に答える 6

2

を使用.contents()してすべてのコンテンツを取得し、.slice()メソッドを適用して最後の 2 つを切り取ります。

$("span.a").contents().slice(0,-2)
于 2012-06-19T06:13:32.170 に答える
1
var clone = $('span.a').clone();
$('span.b', clone).remove();
var text = clone.text();
console.log(text);
于 2012-06-19T06:19:31.300 に答える
1
alert($('span.a').text()); //will alert 'Contents'
于 2012-06-19T06:03:52.290 に答える
0

要素 A を変数に貼り付けることができます。

var $a = $('.a').children().remove();
alert($('.a').html().append($a));​​

この例では、削除またはスライスする必要がある要素の数などをハードコーディングしていません。少しエレガントです。

于 2012-06-19T06:15:36.590 に答える
0
var c = $('.b').nextAll('br').remove().end().parent().find('.b').remove().end().html();
alert(c)

ここで見る

于 2012-06-19T06:20:25.980 に答える
0

最後の 2 項目以外のすべてが必要な場合は、次を試してください。

var $content= $(".a").contents();

var htmlnodes = $content.filter(function(ndx) {
  return (ndx < $content.length -2);
});

    console.log(htmlnodes);​
于 2012-06-19T06:09:33.907 に答える