Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.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 如何使用regex删除字符串Handlerbar.js中的HTML标记_Javascript_Html_Regex_Handlebars.js - Fatal编程技术网

Javascript 如何使用regex删除字符串Handlerbar.js中的HTML标记

Javascript 如何使用regex删除字符串Handlerbar.js中的HTML标记,javascript,html,regex,handlebars.js,Javascript,Html,Regex,Handlebars.js,我有一根像 var string =`<div><b>Test data</b></div><div><div>Invalid DateTime Only YYYY/MM/DD HH:mm:ss is allowed</div></div><br><div><div>Invalid DateTime</div>` var string=`Test da

我有一根像

var string =`<div><b>Test data</b></div><div><div>Invalid DateTime Only YYYY/MM/DD HH:mm:ss is allowed</div></div><br><div><div>Invalid DateTime</div>`
var string=`Test dataInvalid DateTime仅允许YYYY/MM/DD HH:MM:ss
无效的DateTime`
使用Handlebar中的正则表达式从字符串中删除这些HTML标记。 我的代码看起来像

这个DISPLAYVALUE是我的精确字符串,我必须在这里替换HTML标记

<span title="{{{this.DISPLAYVALUE}}}"> {{strip-scripts this.DISPLAYVALUE}}
<a href="javascript:void(0);" class="remove-ico right" data-filter-val="{{{this.DISPLAYVALUE}}}" datacolname='{{@root.currentColName}}'>
<i class="fa fa-times-circle"></i>
</a>
</span>
{{strip scripts this.DISPLAYVALUE}
例外结果:- 测试数据无效日期时间仅YYYY/MM/DD HH:MM:ss允许无效日期时间

如果您可以使用JS:

function myFunction() {
    var str = "<div><b>Test data</b></div><div><div>Invalid DateTime Only YYYY/MM/DD HH:mm:ss is allowed</div></div><br><div><div>Invalid DateTime</div>"; 
    var res = str.replace(/<div>/g, "");
    var res = res.replace(/<\/div>/g, "");
    var res = res.replace(/<b>/g, "");
    var res = res.replace(/<\/b>/g, "");
    var res = res.replace(/<br>/g, " ");
    console.log(res);
}
函数myFunction(){
var str=“测试数据无效日期时间仅允许YYYY/MM/DD HH:MM:ss
无效日期时间”; var res=str.replace(//g,“”); var res=res.replace(//g,“”); var res=res.replace(//g,“”); var res=res.replace(//g,“”); var res=res.replace(/
/g,“”); 控制台日志(res); }
有一些助手方法可以直接在车把模板中使用

    (function() {
    Handlebars.registerHelper('stripScripts', function(param) {
        var regex = /(<([^>]+)>)/ig
        return param.replace(regex, "");
    });

})();
(函数(){
把手.注册表帮助器('stripScripts',函数(param){
var regex=/(]+)>)/ig
返回参数replace(regex,“”);
});
})();
然后,您可以在模板中简单地调用此方法,如

<span title="{{{this.DISPLAYVALUE}}}"> {{stripScripts this.DISPLAYVALUE}}
<a href="javascript:void(0);" class="remove-ico right" data-filter-val="{{{this.DISPLAYVALUE}}}" datacolname='{{@root.currentColName}}'>
<i class="fa fa-times-circle"></i>
</a>
</span>
{{stripScripts this.DISPLAYVALUE}

U需要提取要作为html代码结果显示的字符串值吗?!你可以使用js来更改内部HTMLook,就像字符串缺少结束div标记一样。耶!但这不是一个问题,我只是想显示字符串,而不是你在js中只使用string.replace的标记扫描?