为逗号分隔的单词生成搜索链接

时间:2012-04-05 04:41:26

标签: javascript list hyperlink keyword

一如既往,您的帮助非常重要< 3

我在我的网站上列出了描述中的元数据关键字。我想让它们看起来像标签(我们的cms不支持标签因此这个hack)。它只打印用逗号分隔的单词,如下所示:

<div class="tags">abp, accredited building practitioners, calendar of events, upcoming events</div>

javascript是否能够在这些div中找到任何单词并将其替换为链接到oursite.com/search?query=THEWORD的href?如果是这样,有没有人有他们可以分享的脚本?

2 个答案:

答案 0 :(得分:0)

**检查一下。如果您看到的警报信息是您要查找的信息,则只需将其附加到div中即可。 http://jsfiddle.net/UH5U9/3/

修改

$('.tags').each(function(){
var s = $(this).html()

a = s.split(',');      
var temp='';      
for (var i = 0; i < a.length; i++)
{
    temp =temp + '<a href="oursite.com/search?query='+a[i]+'">'+a[i]+'</a>';

 }
$(this).html('');
$(this).html(temp);
});

答案 1 :(得分:0)

这是一个使用小jQuery构建的工作函数,虽然很容易转换为基本的JavaScript:

<强> jQuery的:

<script>
    $(function(){
        $('.tags').each(function(){
            var obj=$(this),tags=obj.text().split(','),i=0,len=tags.length;
            if(obj.text()) {
                for(i;i<len;i++) {
                    var tag=tags[i].replace(/(^\s*)|(\s*$)/g,'');
                    tags[i]='<a href="http://oursite.com/search?query='+encodeURIComponent(tag)+'">'+tag+'</a>';
                }
                obj.html(tags.join(', '));
            }
        });
    });
</script>

<强> HTML:

<div class="tags">abp, accredited building practitioners, calendar of events, upcoming events</div>
<div class="tags">test, another test, some more testing, etc</div>
<div class="tags">the, code, needed, to, be , in, an, each(), loop</div>
<div class="tags"></div>
<div class="tags">random, words, that, show, work, hopefully</div>
<div class="tags">the, return, false, was, causing, problems</div>
<div class="tags"></div>