首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Vue.js -无法将日期/时间选择器添加到vue.js呈现的html元素中

Vue.js -无法将日期/时间选择器添加到vue.js呈现的html元素中
EN

Stack Overflow用户
提问于 2017-07-07 05:12:51
回答 1查看 186关注 0票数 0

我有一个Vue.js组件,其中包含绑定到Vue数组( s.timespans)的文本字段组(标记为"Start“的文本字段组和另一个标记为”to“的文本字段组)。

我想要的是,当我通过向( s.timespans )数组中添加元素来添加另一组文本字段时,所有textfields都会得到日期/时间选择器。但不幸的是,现在只有第一组字段才能获得日期/时间选择器,而其他组则没有。什么是正确的方法?

提前谢谢。

代码语言:javascript
复制
<template id="settings">
<div v-for="(k,slot) in s.timespans" class="row mb5">
            <div class="col-sm-5">
                <label><?php _e( 'From', 'smps' ); ?></label>
                <input type="text" class="datepicker form-control" v-model="slot.from">
            </div>
            <div class="col-sm-5">
                <label><?php _e( 'To', 'smps' ); ?></label>
                <input type="text" class="datepicker form-control" v-model="slot.to">
            </div>
            <div class="col-sm-2">
                <a href="javascript:" class="btn btn-default pull-right btn-xs br0" @click="remove_timeslot(k)"><i class="fa fa-remove"></i></a>
            </div>
        </div>

<template>

Vue js代码

代码语言:javascript
复制
Vue.component( 'settings', {
        template : '#settings',
        data : function () {
            return {
                s : {
                    timespans : [
                        {from : '', to : ''}
                    ]
                }
            }
        },
        methods : {
            add_timeslot : function () {
                Vue.set(this.s.timespans,this.s.timespans.length,{from:'',to:''});
                $('.datepicker').datetimepicker();
            },
            remove_timeslot : function (k) {
                this.s.timespans.splice(k,1);
            },

        },

    });
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-07 05:22:29

尝试这样做,那么DOM将完成呈现,而不是在nextTick之前。

代码语言:javascript
复制
        add_timeslot : function () {
            Vue.set(this.s.timespans,this.s.timespans.length,{from:'',to:''});
            this.$nextTick(function () {
              $('.datepicker').datetimepicker();
            });
        },

在执行nextTick中的函数时,将呈现DOM元素。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44962977

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档