我有一个HTML:
<strong>1)</strong>TEXT THAT I ONLY NEED<p>some par</p><ul>..</ul>
Run Code Online (Sandbox Code Playgroud)
我只需要"我只需要的文本",而不是HTML中的任何标签,我怎样才能用jQuery获取它?
Del*_*gan 42
最好的方法是对.clone()你的对象,.remove()所有它.children(),然后回到对象使用.end(),最后得到.text().
该博客文章中描述了该方法.
$("strong")
.clone() //clone the element
.children() //select all the children
.remove() //remove all the children
.end() //again go back to selected element
.text(); //get the text of element
Run Code Online (Sandbox Code Playgroud)
好吧,如果你使用 jQuery,你会这样做
$('.selector').text();
Run Code Online (Sandbox Code Playgroud)
编辑:我刚刚看到你想要不在任何标签中的文本 - 这不是直接可能的(事实是,html 文档中的每个文本都在一些 HTML 标签中。)
在这种情况下,我会尝试更改标记(最简单的方法),以便所需的文本位于 html 标记内。如果这是不可能的,您可以使用上述text()方法从父元素获取整个文本,然后必须减去您不需要的部分。
有关如何减去字符串的示例,请参阅http://jsfiddle.net/3SSAR/1/ 。
只需记住在 javascript 中使用substr而不是-减去字符串