Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/423.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在js中截断html字符串_Javascript - Fatal编程技术网

Javascript 如何在js中截断html字符串

Javascript 如何在js中截断html字符串,javascript,Javascript,我有一个页面,将html实体中的文本显示在div节点中,如下所示: 和#x3C;p&x3E;isdjf和x3C/p&x3E;osdf&x26;kdjf';ldsf.&x22;jdof&;身份证 想要在js中将其截断为10个字母的长度,但想要避免破坏html实体,如何正确实现子代码 html实体中断如下所示: var str = '0123456>abc'; console.log( str.substr(0,10) ); // -> "0123

我有一个页面,将html实体中的文本显示在
div
节点中,如下所示:

和#x3C;p&x3E;isdjf和x3C/p&x3E;osdf&x26;kdjf';ldsf.&x22;jdof&;身份证
想要在js中将其截断为10个字母的长度,但想要避免破坏html实体,如何正确实现<代码>子代码

html实体中断如下所示:

var str = '0123456&#x3E;abc';
console.log( str.substr(0,10) );  // -> "0123456&#x"
您看到问题了吗?

函数截断(enTityEncodeString){
function truncate(enitityEncodedString){

    var string, count, pos;

    string = '';

    count = 0;

    while(count <= 10){

        if(enitityEncodedString.search(/&#.{2,3};/) === 0){

            pos = enitityEncodedString.indexOf(';') + 1;

            string += enitityEncodedString.substr(0, pos);

            enitityEncodedString = enitityEncodedString.substr(pos);

        }else{

            string += enitityEncodedString[0];

            enitityEncodedString = enitityEncodedString.substr(1);

        }

        count++;

    }

    return string;


}
变量字符串、计数、位置; 字符串=“”; 计数=0;
while(计算避免破坏html实体是什么意思?什么是html实体破坏?@sumeetkumar,请参阅更新