带有 html 标签的 Javascript 子字符串

标签 javascript substring

我在同一主题上搜索了太多,但对于我正在寻找的内容并不完美。

我有一个像这样的字符串:

var string ='<strong><span>Hii </span> <p>this is just a demo <span>string<span></p></strong>'

现在我想要的是用 javascript 子字符串函数限制它的子字符串,但不希望标签在中间被剪切,例如
<strong><span>Hii </span> <p

它应该像
<strong><span>Hii </span> <p>

我在用
string.substr(0,200)

string 是带有 html 标签的动态变量

最佳答案

我的解决方案:

function smart_substr(str, len) {
    var temp = str.substr(0, len);
    if(temp.lastIndexOf('<') > temp.lastIndexOf('>')) {
        temp = str.substr(0, 1 + str.indexOf('>', temp.lastIndexOf('<')));
    }
    return temp;
}

http://jsfiddle.net/8t6fs67n/

关于带有 html 标签的 Javascript 子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29699098/

相关文章:

javascript - Internet Explorer : expiration date for cookies doesn't work

javascript - 如何在 json 数组中实现搜索

java - 用*替换前5个非空格字符

java - 在Android中与子字符串混淆

javascript - 单击 cytoscape.js 中的节点时更改边缘颜色

javascript - Highcharts -需要高级工具提示功能

javascript - 如何在javascript中将背景从一个div应用于另一个

r - 使用grepl提取R中的子字符串

c# - 如何从字符串中提取非数字文本

c - 用C中的字符串替换字符串中的字符