我有一个这样的字符串:
var str = "x<span>^{<span style="vertical-align: 0em;"><span class="fm-vert fm-frac">3/2}</span></span></span>+y<span>^{<span style="vertical-align: 0em;"><span class="fm-vert fm-frac">7/8}</span></span></span>";
从此我要打印 x ^ {3/2} + y ^ {7/8}
为此我试过这样:
res1=$(str).find('span').contents().unwrap().end().end();
alert(res1.html());
但这仅提供 ^ {3/2} 。缺少x和第二部分(+y^{7/8}
)。
如何以x^{3/2}+y^{7/8}
获得所需的结果。
请帮帮我......
答案 0 :(得分:2)
试试这个......
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript">
var str = 'x<span>^{<span style="vertical-align: 0em;"><span class="fm-vert fm-frac">3/2}</span></span></span>+y<span>^{<span style="vertical-align: 0em;"><span class="fm-vert fm-frac">7/8}</span></span></span>';
jQuery(function(){
jQuery('#test').html(str).hide();
alert(jQuery('#test').html());
});
</script>
<div id="test"></div>
这可能会对你有帮助。
答案 1 :(得分:0)
您可以将它作为临时div的一部分,然后在其上使用text
,这将返回您想要的内容。
var str = 'x<span>^{<span style="vertical-align: 0em;"><span class="fm-vert fm-frac">3/2}</span></span></span>+y<span>^{<span style="vertical-align: 0em;"><span class="fm-vert fm-frac">7/8}</span></span></span>';
console.log($('<div />').html(str).text());
答案 2 :(得分:0)
您必须在相同类型的引号内转义引号。我只是避开它们
var str = "x<span>^{<span style='vertical-align: 0em;'><span class='fm-vert fm-frac'>3/2}</span></span></span>+y<span>^{<span style='vertical-align: 0em;'><span class='fm-vert fm-frac'>7/8}</span></span></span>";
alert($('<div />', { html: str }).text());
我有时也这样做是为了让html字符串可读:
var str = ["x<span>^{",
"<span style='vertical-align: 0em;'>",
"<span class='fm-vert fm-frac'>3/2}</span>",
"</span>",
"</span>",
"+y<span>^{",
"<span style='vertical-align: 0em;'>",
"<span class='fm-vert fm-frac'>7/8}</span>",
"</span>",
"</span>"].join('');
alert($('<div />', { html: str }).text());
答案 3 :(得分:0)
你试过吗
str.replace(/<(|\/)spa[^>]*>/g, '');
var str = 'x<span>^{<span style="vertical-align: 0em;"><span class="fm-vert fm-frac">3/2}</span></span></span>+y<span>^{<span style="vertical-align: 0em;"><span class="fm-vert fm-frac">7/8}</span></span></span>';
console.log(str.replace(/<(|\/)span[^>]*>/g, ''));