V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
han3sui
V2EX  ›  Vue.js

vue 从后台获取的 html,替换指定标签后插入 onclick 事件

  •  
  •   han3sui · Jan 16, 2020 · 4727 views
    This topic created in 2293 days ago, the information mentioned may be changed or developed.

    从后台返回的 html,需要替换两个标签为 img,并且添加带参数的 onclick 事件,请教下,怎么操作比较好,v-html 渲染出来无法使用 click 事件的

    8 replies    2020-01-17 12:46:14 +08:00
    walpurgis
        1
    walpurgis  
       Jan 16, 2020 via Android
    要用数据驱动的思想,不到万不得已不要直接操作 dom
    能改后端不,让后端只传数据,不行的话,前端自己解析 html 字符串,拿里面的数据
    randyo
        2
    randyo  
       Jan 16, 2020 via Android
    把 html 当成 vue 模板创建一个实例再插入页面
    avenger
        3
    avenger  
       Jan 16, 2020 via iPhone   ❤️ 1
    我之前解决过一个类似的问题 你看看能不能参考 https://www.0.51bbc.workers.dev/t/553534?p=1
    yyss8
        4
    yyss8  
       Jan 16, 2020 via iPhone
    后端一定要返回 html 吗 不能返回 render function 所用的 json 吗
    han3sui
        5
    han3sui  
    OP
       Jan 16, 2020
    @avenger 感谢老哥,参考了下,先这样解决了
    han3sui
        6
    han3sui  
    OP
       Jan 16, 2020   ❤️ 1
    @yyss8 是的,后端返回的都是 html
    qingm
        7
    qingm  
       Jan 17, 2020
    要么 后端直接给你 json 然后 vue 渲染
    要么就是 window.funcname = this.funcname
    no1xsyzy
        8
    no1xsyzy  
       Jan 17, 2020
    @yyss8 返回 render function 参数也太诡异了吧,照道理应该 #1 只传数据或者把传来的当个 xml 数据解析
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1120 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 18:15 · PVG 02:15 · LAX 11:15 · JFK 14:15
    ♥ Do have faith in what you're doing.