在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/HTML/ 使用 jquery 動(dòng)態(tài)生成的 html,vue 的data 的值沒(méi)有綁定上去,

使用 jquery 動(dòng)態(tài)生成的 html,vue 的data 的值沒(méi)有綁定上去,請(qǐng)問(wèn)怎么綁定綁定?

//            html
<div id="app">
  <div id="c"></div>
</div>
<script id="tpl" type="text/template">
<div style="display: inline-block;">
    <input type="radio" name="payway" v-model="payway" value="wx"/>
  <input type="radio" name="payway" v-model="payway" value="zfb"/>
</div>
</script>
//            js
new Vue({
  el: "#app",
  data: {
    payway: "wx"
  },
  mounted: function(){
    $("#c").html($("#tpl").html())
  }
})

clipboard.png
radio沒(méi)有被選中(綁定data)

clipboard.png


clipboard.png

  • 生成的東西沒(méi)有綁定上去值,怎么實(shí)現(xiàn) jquery 生成的html的就綁定上去值呢?
  • 或者不應(yīng)該這樣做,而應(yīng)該用組件來(lái)做?但是組件如何實(shí)現(xiàn)呢?

補(bǔ)充:實(shí)際上我的代碼是用了一個(gè)彈出層插件http://layer.layui.com/

layer.open({
    type: 1,
    skin: 'layui-layer-rim', //加上邊框
    area: ['500px', '500px'], //寬高
    content: $("#paytpl").html() // 這里就是<script type="text/template">中的內(nèi)容,所以生成的東西就沒(méi)有綁定vue的data了
});
// content: html字符串 //這個(gè)就是彈出層的內(nèi)容,它里面就要寫(xiě)html代碼,也就是說(shuō)不知道怎么在這個(gè)html 綁定vue的數(shù)據(jù)
回答
編輯回答
陌如玉

this.$refs.paytpl.$el.cloneNode(true) 克隆下節(jié)點(diǎn)不行嗎

2017年11月6日 17:52
編輯回答
只愛(ài)你

vue可以操作dom???

2017年7月27日 10:28
編輯回答
吃藕丑

你用到了動(dòng)態(tài)模板,這個(gè)模板里除了標(biāo)準(zhǔn)的html部分,剩下的比如綁定和組件都不會(huì)生效,解決方法是先編譯,而且這還需要你使用的是完整版本的vue,而不是runtime版本的vue,并且要使用專(zhuān)門(mén)的tag,參考官方文檔中的這一段 https://vuejs.org/v2/guide/co...

不過(guò),從你的代碼邏輯,沒(méi)看出來(lái)為什么需要使用動(dòng)態(tài)模板,靜態(tài)模板不可以嗎?

2018年8月18日 09:30