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();
精彩评论