var icons = $(".IT_Icon").text().trim().split(",");
上面,逗号之间的元素文本部分被分解并存储在数组中。如果我想包装或附加或对源列表中的项目执行任何操作,我该怎么做?
例如:
之前:
[cat, dog, mouse, elephant, lion, bird]
之后:
<img src="cat"/>, <img src="dog"/>, <img src="mouse"/>, <img src="elephant"/>, <img src="lion"/>, <img src="bird"/>
转念一想,难道我不能只使用一个正则表达式来查找列表的“部分”,逗号之间的内容,并用我需要的任何内容对其进行补充吗?是包装还是替换?
回答
这就是我的结局:
$(".IT_badge").each(function () {
var badges = $(this).text().trim().split(",");
$(this).html("");
for (i = 0; badges.length > i; i++) {
$(this).append($("<img/>").attr("src", 'IT_Badges/' + badges[i] + '.png'));
if (!(badges.length === i+1)) {
$(this).append(", ");
}
}
});
最佳答案
我最喜欢的方法很简单:
str = '<img src="' + ary.join('"/><img src="') + '"/>';
这将为您提供一串图像标签。如果你想在 jQuery 中这样做,像这样:
(".IT_Icon").each(function(){
var $this = $(this);
$this.html('<img src="' + $this.text() + '"/>');
});
你是想得到一个字符串吗?修改 HTML?
关于javascript - 关于数组/正则表达式的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6035185/