0

いつものように、あなたの助けは非常に価値があります<3

説明にメタデータキーワードを含むリストが自分のサイトにあります。これらをタグのように見せたいです(私たちのcmsはタグをサポートしていないので、このハックです)。次のように、コンマで区切られた単語だけを出力します。

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

javascriptは、これらのdiv内の任意の単語を検索し、oursite.com / search?query = THEWORDにリンクするhrefに置き換えることができますか?もしそうなら、誰かが共有できるスクリプトを持っていますか?

4

2 に答える 2

0

これは、基本的なJavaScriptに簡単に変換できますが、小さなjQueryで構築された機能する関数です。

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>
于 2012-04-05T05:05:18.140 に答える
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);
});
于 2012-04-05T04:50:56.423 に答える