Javascript 如何将HTML字符串拆分为多个片段并去除外部标记?
最好使用jQuery与上下文保持一致,但纯JS显然是不错的 给定这样的字符串,Javascript 如何将HTML字符串拆分为多个片段并去除外部标记?,javascript,jquery,Javascript,Jquery,最好使用jQuery与上下文保持一致,但纯JS显然是不错的 给定这样的字符串,,如何将其转换为: ['',][/code> 所以我想去掉li标签,得到一组图像。我知道我可以splitlis来获取数组,但是我如何能够不用手就轻松地剥离li标记呢?var result=[]; var result = []; var str = '<li><img src="something.jpg"></li><li><img src="something2
,如何将其转换为:
['',][/code>
所以我想去掉li
标签,得到一组图像。我知道我可以split
li
s来获取数组,但是我如何能够不用手就轻松地剥离li
标记呢?var result=[];
var result = [];
var str = '<li><img src="something.jpg"></li><li><img src="something2.jpg"></li>';
$(str).find('img').each(function(){
var $this = $(this);
result.push($this.html());
});
var str='';
$(str).find('img').each(function(){
var$this=$(this);
push($this.html());
});
这样就可以了。var result=[];
var str='';
$(str).find('img').each(function(){
var$this=$(this);
push($this.html());
});
这样就可以了。检查一下这把小提琴,看看是否有可用的演示:
//假设“string”是您的字符串,这将在内存和
//添加字符串将从中构建DOM结构
var$temp=$(“
”)html(字符串);
var图像=[];
//然后,我们使用jQuery从DOM结构中提取LI元素并
//然后将来自每个数组的.html()结果附加到数组中以获取图像字符串。
$temp.find(“li”)。每个(函数(){
image.push($(this.html());
});
检查此小提琴是否有可用的演示:
//假设“string”是您的字符串,这将在内存和
//添加字符串将从中构建DOM结构
var$temp=$(“
”)html(字符串);
var图像=[];
//然后,我们使用jQuery从DOM结构中提取LI元素并
//然后将来自每个数组的.html()结果附加到数组中以获取图像字符串。
$temp.find(“li”)。每个(函数(){
image.push($(this.html());
});
一个使用replace的简单解决方案,它可能会更优化
var str = '<li><img src="something.jpg"></li><li><img src="something2.jpg"></li>';
str = str.replace(/<\/?li>/g,'');
str = str.replace('><','>,<');
str = str.split(',');
var str='';
str=str.replace(//g',);
str=str.replace('>,一个使用replace的简单解决方案,它可能会更优化
var str = '<li><img src="something.jpg"></li><li><img src="something2.jpg"></li>';
str = str.replace(/<\/?li>/g,'');
str = str.replace('><','>,<');
str = str.split(',');
var str='';
str=str.replace(//g',);
str=str.replace('>,最简单的方法是:
var string = '<li><img src="something.jpg"></li><li><img src="something2.jpg" /></li>',
temp = $(string),
contents = temp.contents().map(function(){
return this.outerHTML;
}).get();
console.log(contents);
// ["<img src="something.jpg">", "<img src="something2.jpg">"]
// this is the literal console.log() output, despite looking like a
// JavaScript string/syntax error.
参考资料:
最简单的方法是:
var string = '<li><img src="something.jpg"></li><li><img src="something2.jpg" /></li>',
temp = $(string),
contents = temp.contents().map(function(){
return this.outerHTML;
}).get();
console.log(contents);
// ["<img src="something.jpg">", "<img src="something2.jpg">"]
// this is the literal console.log() output, despite looking like a
// JavaScript string/syntax error.
参考资料:
等等,您是需要全部字符串还是希望以jquery图像元素数组结束?您是需要全部字符串还是希望以jquery图像元素数组结束final
(ecma2+3)和finally
是JavaScript中的保留字。可能需要更改此设置。final
(ecma2+3)最后,是JavaScript中的保留字。可能需要更改。