最近项目做一个动态表单的增删改查,里面有用到选择日期范围,并且做了表单校验,但是在选择日期范围的时候已经选择到了但是无法在输入框内回显 毫无反应且change事件也处于失效状态。
一、项目实例图片
二、部分代码片
1.el–date–picker
<el-form :model="dynamicForm" ref="dynamicForm" :rules="rules"> //其他属性省略根据自己需求写上
<div v-for="(item, index) in dynamicForm.dataList" :key="index"> // 动态表单
<el-form-item :prop="`dataList[${index}].desc`" :rules="rules.desc">
<el-input v-model="item.desc" type="text" > </el-input>
</el-form-item>
<el-form-item :prop="`dataList[${index}].num3`">
<el-date-picker
v-model="item.num3"
type="monthrange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
:picker-options="pickerOptions"
value-format="yyyy-MM"
format="yyyy-MM"
@input="handleInput($event,index)" // change失效用input代替
>
</el-date-picker>
</el-form-item>
</div>
</el-form>
2.自定义data
data(){
retuen {
rules: {},
dynamicForm:{
dataList: [
num3: [],
desc: ''
]
}
}
}
3.methods
handleInput (val, index) {
if (val) {
// 反显
this.$set(this.dynamicForm.dataList[index].num3, 0, val[0])
this.$set(this.dynamicForm.dataList[index].num3, 1, val[1]) //数组的索引响应式使用$set改变对应值
} else {
// 清空
this.$set(this.dynamicForm.dataList[index].num3, 0, '')
this.$set(this.dynamicForm.dataList[index].num3, 1, '')
}
}
原文地址:https://blog.csdn.net/miem_yang/article/details/132565903
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_23308.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。