Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用jQuery获取包含子元素的元素中的文本_Javascript_Jquery - Fatal编程技术网

Javascript 如何使用jQuery获取包含子元素的元素中的文本

Javascript 如何使用jQuery获取包含子元素的元素中的文本,javascript,jquery,Javascript,Jquery,我将文本存储在一个包含多个span标记的变量中。 我想一次获得每个跨度内的所有内容。 如何使用jQuery或javascript实现这一点 <htmlText> Researchthe university has been given a 5 star rating in the current Research Assessment Exercise. It is one of the UK's leading technological universities, sp

我将文本存储在一个包含多个span标记的变量中。 我想一次获得每个跨度内的所有内容。 如何使用jQuery或javascript实现这一点

<htmlText>
    Researchthe university has been given a 5 star rating in the current Research Assessment Exercise. It is one of the UK's leading technological universities, specialising in research to provide solutions critical to industry, commerce and the healthcare, voluntary and public sectors.
    <span class="NBResult"></span><span class="NBResult">Data transmission speed</span>
    <span>, green fuels,small business marketing needs, European bureaucracy and the treatment </span>
    <span class="NBSearchTerm">of</span>
    <span> </span><span class="NBSearchTerm">cancer</span>
    <span> are all under investigation at the university. </span>
</htmlText>
更新:此解决方案已更新为评论中的以下附加问题:

只需获取父选择器的.text属性

var myWords = "<span>I</span><span> </span><span>like</span><span> </span><span>words.</span>";

/* "I like words" */
alert($(myWords).find("span").text());
alert($("p.words span").text());

<p class="words">
  <span>I</span><span> </span><span>like</span><span> </span><span>words.</span>
</p>
更新:此解决方案已更新为评论中的以下附加问题:

只需获取父选择器的.text属性

var myWords = "<span>I</span><span> </span><span>like</span><span> </span><span>words.</span>";

/* "I like words" */
alert($(myWords).find("span").text());
alert($("p.words span").text());

<p class="words">
  <span>I</span><span> </span><span>like</span><span> </span><span>words.</span>
</p>

如果我理解正确,请将注释形成Jonathan的答案,并将以下HTML存储在变量中:

<div id='bla'>
    ASD
    <span>foo</span>
    sdf
    <span class='x'>bar</span>
</div>
您希望获得:

<span>foo</span><span class='x'>bar</span>
您可以通过以下方式实现:

var htmlStuff = '<div id="bla">etc.</div>'; //the HTML
var ret = new Array();
$(htmlStuff).find('#bla').children('span').each(function(){
     var x = $(this).wrap('<div></div>').parent().html();
     ret.push(x);
});
var spanString = x.join('');

然而,这有点难看,在DOM中执行此操作时无法正确工作,因为您将所有跨度都封装在div中。要在DOM中实现这一点,请获取divbla的HTML,然后将其用作htmlStuff

,如果我理解正确,请将注释形式设置为Jonathan的答案,并将以下HTML存储在一个变量中:

<div id='bla'>
    ASD
    <span>foo</span>
    sdf
    <span class='x'>bar</span>
</div>
您希望获得:

<span>foo</span><span class='x'>bar</span>
您可以通过以下方式实现:

var htmlStuff = '<div id="bla">etc.</div>'; //the HTML
var ret = new Array();
$(htmlStuff).find('#bla').children('span').each(function(){
     var x = $(this).wrap('<div></div>').parent().html();
     ret.push(x);
});
var spanString = x.join('');

然而,这有点难看,在DOM中执行此操作时无法正确工作,因为您将所有跨度都封装在div中。要在DOM中实现这一点,请获取divbla的HTML,然后将其用作HTMLSUFF

,但也有一些内容超出了范围。。我只想选择span内的内容…如果我想选择span内的所有内容以及span标记呢???天哪,伙计:如果你也需要span标记,那么你应该从.text切换到.html$p.words.html和$myWords.htmlb,但span外还有一些内容。。我只想选择span内的内容…如果我想选择span内的所有内容以及span标记呢???天哪,伙计:如果你也需要span标记,那么你应该从.text切换到.html$p.words.html和$myWords.html