需求:
需要在v-html的html字符串的button中绑定点击事件,需要点击后做一些操作,必须渲染成html,但是渲染后的html里面写绑定事件的代码没有经过vue编译,所以事件无效。
<div class="code-review"> <div v-html="html" v-highlight @click="addComment($event)"></div> </div> computed: { html () { return '<button></button >' }, },
解决办法:
在v-html同级元素中使用事件绑定,然后根据事件触发的目标对象去判断和获取参数。
addComment:function (event) { if(event.target.nodeName === 'BUTTON'){ // 获取触发事件对象的属性 alert("a"); } },
以上这篇vue实现在v-html的html字符串中绑定事件就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。
问题内容: 这是我尝试过的方法以及出现问题的方法。 这有效: 这不是: description属性只是HTML内容的普通字符串。但是由于某种原因,它呈现为字符串,而不是HTML。 问题答案: 检查您尝试追加到节点的文本是否没有像这样转义: 代替这个:
以下是我尝试过的,以及它是如何出错的。 这个作品: 这没有: description属性只是HTML内容的普通字符串。但是,由于某些原因,它被呈现为字符串,而不是HTML。 有什么建议吗?
问题内容: 我使用setState更新html的一部分,但发现未呈现新的更新html。这是js fiddle 代码: HTML: js: 我省略了从服务器更新html的部分,但结果是相同的。如何让状态字符串呈现? 问题答案: 使用注入HTML作为一个字符串做出反应(但请注意,阵营将无法在它的虚拟DOM使用这个标记): http://jsfiddle.net/5Y8r4/11/ 用于执行此操作的AP
问题内容: 我想将具有自定义样式的html字符串绑定到DOM。但是从字符串中删除样式。 例如: 在控制器中: 在DOM中: 将省略样式属性。结果将如下所示: 代替: 问题: 如何实现? 问题答案: 正如已经提到过的@Beyers,您必须使用,将其直接用于DOM中,您可以像这样在JS / controller部分中这样做: 在DOM / HTML部分
问题内容: 给定$ scope模型中包含HTML实体的字符串,如何确保该实体正确显示为HTML字符而不是文字字符串? HTML实体-MDN词汇表 http://plnkr.co/edit/0BliljcDkj0vvj3jdEqz?p=预览 问题答案: 使用$ sce 。您需要明确地告诉angular内容是html。 http://plnkr.co/edit/9iNnRC7AxFptnQZLPtYR
问题内容: 我正在使用Beautiful Soup 3解析一些HTML,但是它包含HTML实体,Beautiful Soup 3不会自动为我解码: 如何解码HTML实体以获得而不是。 问题答案: Python 3.4以上用途 FYI 已过时,并且应该在3.5中删除,尽管它是错误地遗忘的。它将很快从语言中删除。 Python 2.6-3.3 您可以HTMLParser.unescape()从标准库中