迭代+替换脚本

发布于 2024-11-07 17:53:41 字数 420 浏览 0 评论 0原文

$(".IT_Badge").each(function(){
    var badges = $(".IT_Badge").val().trim().split(",");
    for (c = 0; badges.length > c; c++) {
        currentBadge = badges[c];
        currentBadge.replaceWith($("<img/>").attr("src", 'IT_Badges/' + badges[c] + '.png'));
    }
});

我有多个包含关键字的跨度。我需要用 src 为关键字的图像替换关键字。但是,我担心放置在跨度中的图像将放置在名为 IT_Badge 的所有跨度中,因此需要 for 循环和each。我希望替换是在一个跨度的基础上进行的。

$(".IT_Badge").each(function(){
    var badges = $(".IT_Badge").val().trim().split(",");
    for (c = 0; badges.length > c; c++) {
        currentBadge = badges[c];
        currentBadge.replaceWith($("<img/>").attr("src", 'IT_Badges/' + badges[c] + '.png'));
    }
});

I have multiple spans with keywords in them. I need to replace the keywords with images who's src is the keyword. However, i'm worried that the images placed in the span will be placed in all spans called IT_Badge, hence the for loop and the each. I want the replacement to be on a span by span basis.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

玩世 2024-11-14 17:53:41

您不会在第一次迭代中每次都将 iconInst 设置为数组。看起来 iconInst 在第二次迭代时不是一个数组。这是拼写错误吗?我认为您打算这样做

var iconInst = [];
$(".IT_Badge").each(function(i, el){
    iconInst.push($(this).addClass('Inst' + i));
});

iconInst.each(function(){
    var badges = $(this).val().trim().split(",");
    for (c = 0; words.length > c; c++) {
        $(this).contents().replaceWith($("<img/>").attr("src", 'Icon/' + badges[c] + '.png'));
    }
});

,如果是这种情况,请更新问题,我们将从那里继续,如果不是,我不太清楚您要处理的问题是什么。

You are not setting iconInst to an array every time in the first itteration. It appears that iconInst is not an array by the second itteration. Is this a typo? I think you intended to do

var iconInst = [];
$(".IT_Badge").each(function(i, el){
    iconInst.push($(this).addClass('Inst' + i));
});

iconInst.each(function(){
    var badges = $(this).val().trim().split(",");
    for (c = 0; words.length > c; c++) {
        $(this).contents().replaceWith($("<img/>").attr("src", 'Icon/' + badges[c] + '.png'));
    }
});

If that is the case, please update the question and we'll continue from there, if not I am not very clear as to what the issue you are trying to deal with is.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文