vue.js:select单选框选中问题

在使用vue.js做项目过程中遇到一个很奇怪的问题:

clipboard.png

<select class="form-control" v-model="editMsg.defaultSoureDB">
    <option v-for="db in editProSourceDB" :value="db">{{db}}</option>
</select>

<select class="form-control" v-model="editMsg.defaultSoureDB">
    <template v-for="db in editProSourceDB">
        <option  :value="db">{{db}}</option>
    </template>
</select>

上面两种遍历的方法不一样,表现的出来的结果都不一样,第一种直接在option标签内v-for遍历是有默认选中值为editMsg.defaultSoureDB,但是第二种却不显示,效果如图

clipboard.png

过程:

点击编辑按钮,把编辑的数据id进行ajax查询到要编辑的该项,然后再把对应的项显示在对应的框中。

自己有进行普通环境中使用option和template两种情况下遍历数据然后v-model选中,但是两种方式并无差异都可以选中v-model绑定的值。jsfiddle链接:https://jsfiddle.net/DodoMons...

可是为什么现在在项目过程却表现不一呢?求高手指点

阅读 11.6k
1 个回答

Vue 的模板是 DOM 模板,使用浏览器原生的解析器而不是自己实现一个。相比字符串模板,DOM 模板有一些好处,但是也有问题,它必须是有效的 HTML 片段。一些 HTML 元素对什么元素可以放在它里面有限制。常见的限制:

a 不能包含其它的交互元素(如按钮,链接)
ul 和 ol 只能直接包含 li
select 只能包含 option 和 optgroup
table 只能直接包含 thead, tbody, tfoot, tr, caption, col, colgroup
tr 只能直接包含 th 和 td

直接上开发文档

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题