带有 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)

字符串是带有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 - JavaScript 中的生命游戏 - 使用 Table

javascript - Jquery .on() Vue.js 渲染原始 HTML

javascript - 磁盘和垂直矩形之间的碰撞检测

sql - 子字符串,在最后一次出现字符之后?

c - 如何在 C 中编写 *nix 的基本名称

c# - 如何在 asp.net 中的按钮单击事件调用之前和之后调用 javascript 函数

javascript - 找到最远的 DIV 的最便宜的方法?

javascript - 如何检查对象是否至少包含一个键,其值包含 JavaScript 中的子字符串?

list - Haskell:测试列表是否包含特定的 "sublist"

c++ - 在c++中确定字符串中不同子字符串的数量并使用散列