2 に答える 2

2

要素をループし、.split' - ' で文字列を分割してから、最後の要素 (URL) をポップオフし.join、残りの文字列を要素間の ' - ' でまとめます。

$('ul li').each(function () {
    var li = $(this),
        parts = li.text().split(' - ');
    li.html('<a href="' + parts.pop() + '">' + parts.join(' - ') + '</a>');
});

http://jsfiddle.net/rustyjeans/89whD/

于 2013-03-14T21:30:39.697 に答える
0

と の組み合わせを使用し.wrapInner()ます.each()

$('ul li').wrapInner('<a>').find('a').each(function(i,el) {
    var arrCont = $(el).text().split(/\s*-\s*http/),
        strText = arrCont[0],
        strUrl = "http"+arrCont[1];
    $(el).attr('href',strUrl).attr('title','').text(strText);
});

http://jsfiddle.net/mblase75/Ax8QU/

于 2013-03-14T21:45:19.810 に答える