开发者

jquery .each loop and replace to same location?

i got help (Select a Tag with a Selector from a Text Variable using jQuery) on looping the static var and replacing it value, but just one question is left from it, is how can i replace finded tags with newly changed tags in the text area

Code:

var length = 30;
var end    = '...';
var text = `some string here with <a href="#link">http:something.com</a> more string and more links also`;

$('<di开发者_开发问答v>' + text + '</div>').find('a').each(function() {

                var link_value = $(this).html();
        $(this).html(link_value.substring(0, length-1)+(link_value.length > length ? end : ''));
// now how can i put $(this).html() back in the text area, which it was found at?

        });


Actually when changing this one way or the other, the changes are made and you don't need to put it back instead just use end()

var div = $('<div>' + text + '</div>').find('a').each(function() {...}).end();


    var length = 30;
    var end    = '...';
    var div = $('<div>' + text + '</div>');
    $(div).find('a').each(function() {
        var link_value = $(this).html();
        $(this).html(link_value.substring(0, length)+(link_value.length > length ? end : ''));
    });

    var text = div.html();
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜