2

私のhtmlは -

​<div>
    <span>spanText</span>
    nonspantext
</div>
​​​​​​

私のjsは -

​$(function(){
    alert($("div").text());
});​

私が取得したいのは、アラートとして「nonspantext」です。
始めるフィドルはここにあります - http://jsfiddle.net/UHr2x/

4

2 に答える 2

7

を使用.contents()して要素のコンテンツ (テキスト ノードを含む) を取得し、結果をフィルタリングしてテキスト ノードのみを残すことができます。

$("div").contents().filter(function () {
    return this.nodeType === 3;  
}).text();

これが実際のです。結果には新しい行が含まれていることに注意してください。使用する前にトリミングすることをお勧めします。

于 2012-10-11T13:23:56.453 に答える
1

これは、古き良き DOM API を使用するための非常に優れた使用例です。

$('span')[0].nextSibling.nodeValue;

そして実例

ジェームズのソリューションよりも効率的です。

于 2012-10-11T13:36:07.837 に答える