今天写个按钮,传递参数时,遇到个障碍,代码如下

<a onclick="insertAtCursor('[btn url=""][/btn]');">按钮</a>

url="" 中的引号,会导致解释错误,正常来说遇到引号冲突都是加 / 解决,然而并不适合这种情况。

解决方法

用html实体字符替换掉冲突引号, " 换成 " 即可如

<a onclick="insertAtCursor('[btn url=""][/btn]');">按钮</a>
如果是单引号冲突, ' 换成 &apos; 即可,ie 好像不支持建议使用数字形式的如 '

什么是html实体字符?

实体字符是 html 预留的一些字符,因为在 html 语法中有些你想输出符合会被浏览器判定为标签进行渲染,所以为了避免这种情况,就有了实体标签。

比如有的时候你在 html 中使用了很多空格,但是html渲染出来就只有一个有效空格,这时候就可以用空格的实体字符   解决,还有个实际用途,比如在 markdown 编辑器下,两个空格可能会被识别成markdown语法,那么你想段前空两格就可以放两个   

引用实体字符,可以引用实体字符的字符名字,如 &apos; ,也可以引用实体编号如 ' ,实体编号各个浏览器兼容比较好,但是不利于记忆。

更多实体字符可以参考w3c https://www.w3school.com.cn/tags/html_ref_entities.html

最后修改:2020 年 06 月 19 日 01 : 54 PM
如果觉得我的文章对你有用,请随意赞赏