Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.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 是否可以在不使用innerHTML的情况下将标记替换为字符串中的href链接?_Javascript - Fatal编程技术网

Javascript 是否可以在不使用innerHTML的情况下将标记替换为字符串中的href链接?

Javascript 是否可以在不使用innerHTML的情况下将标记替换为字符串中的href链接?,javascript,Javascript,我有一个JavaScript字符串,如下所示 常量链接=` 查看我的备忘单: 太棒了 `; 我想把上面的文字转换成这个 常量链接=` 查看我的备忘单: https://tailwindcomponents.com/cheatsheet/ 太棒了 `; 虽然我可以使用innerHTML,但我的文本可能包含其他脚本标记,这可能会导致XSS 现在更换标签对我来说已经足够了 是否有任何可能的字符串解决方案?DOMParser可以安全地解析HTML字符串,而不存在任何不安全代码执行的可能性: 常量链接=

我有一个JavaScript字符串,如下所示

常量链接=` 查看我的备忘单: 太棒了 `; 我想把上面的文字转换成这个

常量链接=` 查看我的备忘单: https://tailwindcomponents.com/cheatsheet/ 太棒了 `; 虽然我可以使用innerHTML,但我的文本可能包含其他脚本标记,这可能会导致XSS

现在更换标签对我来说已经足够了


是否有任何可能的字符串解决方案?

DOMParser可以安全地解析HTML字符串,而不存在任何不安全代码执行的可能性:

常量链接=` 查看我的备忘单: 太棒了 `; const doc=new DOMParser.parseFromStringlink,'text/html'; 对于querySelectorAll'a'文档的常量a{ a、 替换为a.href; }
console.logdoc.body.innerHTML DOMParser可以安全地解析HTML字符串,而不存在任何不安全代码执行的可能性:

常量链接=` 查看我的备忘单: 太棒了 `; const doc=new DOMParser.parseFromStringlink,'text/html'; 对于querySelectorAll'a'文档的常量a{ a、 替换为a.href; }
console.logdoc.body.innerHTML;innerHTML不运行脚本标记…@dandavis您可以在模板之外运行,但OP没有提到这一点;脚本标记SinneRHTML不运行脚本标记…@dandavis您可以在模板之外运行,但OP没有提到这一点;脚本标记