gpt4 book ai didi

javascript - 让Vue注册datepicker事件

转载 作者:行者123 更新时间:2023-12-03 04:15:19 24 4
gpt4 key购买 nike

如何让 Vue 知道日期选择器更改了日期?

new Vue({
el: '#app',
data: {
termin: ''
},
computed: {

},
methods: {

}
})

只是一个输入字段:

<div id="app">

<div class="uk-form-icon"><i class="uk-icon-calendar"></i>
<input name="termin" v-model="termin" value="" placeholder="Choose date" type="text" data-uk-datepicker="{format:'DD.MM.YYYY'}" required="required">
</div>
<p>
Date: {{termin}}
</p>
</div>

如果您手动更改输入字段,Vue 会获取它,但在触发选择器后不会获取它。

https://jsfiddle.net/Honkoman/dfohvcpk/

最佳答案

最快的方法是从 Vue 中的日期选择器中添加隐藏事件的处理程序。

mounted(){
$(this.$el).on('hide.uk.datepicker', e => this.termin = this.$refs.date.value)
}

这是您的fiddle已更新以执行此操作。

但是,传统上,您应该将 jQuery 交互包装在 wrapper component 中。 .

Vue.component("datepicker",{
props:["value"],
template:`
<input ref="date" name="termin" :value="value" placeholder="Choose date" type="text" data-uk-datepicker="{format:'DD.MM.YYYY'}" required="required">
`,
mounted(){
$(this.$el).on('hide.uk.datepicker', e => this.$emit('input', this.$refs.date.value))
}
})

你的模板将变成

<div class="uk-form-icon"><i class="uk-icon-calendar"></i>
<datepicker v-model="termin"></datepicker>
</div>

这是你的 fiddle已更新以配合使用。

关于javascript - 让Vue注册datepicker事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44164754/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com