详解Vue.js和layui日期控件冲突问题解决办法


Posted in Javascript onJuly 25, 2019

事故还原:

今天在用layui的日期控件的时候发现一个问题,就是form表单中的日期选择之后,如果后面的输入框再输入值,这个日期就会自动清空,导致没办法提交,研究之后发现是vue的model绑定和layui冲突产生的,事实上是vue无法动态绑定layui中获取到的日期值,我们把那个v-model去掉就好,但是去掉的话就没办法动态绑定后台数据.

下面是html+vuejs+layui

lyui通过use方法获取到input的ID实现日期选择,但是vue的model绑定和layui是有冲突的.

对于这个情况大概处理思路是这样的:我们就不让他自动绑定了,把这个input的v-model属性去掉,然后再form表单提交之前利用jquery手动给这个属性赋值就好了.

<input type="text" id="beginTime" name="teacherLeave.leaveBegin" v-model="teacherLeave.leaveBegin" class="layui-input">开始时间
<input type="text" name="teacherLeave.reson" v-model="teacherLeave.reson" class="layui-input">


<script>
layui.use('laydate', function() {
  var laydate = layui.laydate;
  //执行一个laydate实例
  laydate.render({
    elem : '#beginTime' 
  });
 });
</script>

下面是具体处理的伪代码:

//模拟提交方法
saveOrUpdate: function () {
   //输出赋值之前的leaveBegin的值,为undefined
   //vm是vue.js页面的一个data对象,这部分是vue.js的知识,不用特别在意
   alert(vm.teacherLeave.leaveBegin);
   //通过jquery获取html页面input的value值,并将这个值(即时间日期)赋给js中data的vm的teacherLeave属性
   vm.teacherLeave.leaveBegin = $('#beginTime').val();
   //输出赋值之后的leaveBegin的值,作对比
   alert(vm.teacherLeave.leaveBegin);
   //获取的值不一样,说明赋值成功
   }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
类之Prototype.js学习
Jun 13 Javascript
JS 时间显示效果代码
Aug 23 Javascript
web的各种前端打印方法之jquery打印插件PrintArea实现网页打印
Jan 09 Javascript
禁止空格提交表单的js代码
Nov 17 Javascript
EasyUI中combobox默认值注意事项
Mar 01 Javascript
jquery实现二级导航下拉菜单效果
Dec 18 Javascript
Bootstrap项目实战之首页内容介绍(全)
Apr 25 Javascript
Bootstrap 模态框实例插件案例分析
Dec 28 Javascript
vue实现简单实时汇率计算功能
Jan 15 Javascript
浅谈React组件之性能优化
Mar 02 Javascript
jQuery中可见性过滤器简单用法示例
Mar 31 jQuery
浅谈Vue 自动化部署打包上线
Jun 14 Javascript
turn.js异步加载实现翻书效果
Jul 25 #Javascript
js 实现ajax发送步骤过程详解
Jul 25 #Javascript
MockJs结合json-server模拟后台数据
Aug 26 #Javascript
微信小程序 调用微信授权窗口相关问题解决
Jul 25 #Javascript
mock.js模拟前后台交互
Jul 25 #Javascript
解决Vue打包后访问图片/图标不显示的问题
Jul 25 #Javascript
使用VueCli3+TypeScript+Vuex一步步构建todoList的方法
Jul 25 #Javascript
You might like
php4的session功能评述(一)
2006/10/09 PHP
PHP开发规范手册之PHP代码规范详解
2011/01/13 PHP
php防注入及开发安全详细解析
2013/08/09 PHP
php共享内存段示例分享
2014/01/20 PHP
php导出csv数据在浏览器中输出提供下载或保存到文件的示例
2014/04/24 PHP
PHP实现加强版加密解密类实例
2015/07/29 PHP
深入理解PHP内核(一)
2015/11/10 PHP
PHP defined()函数的使用图文详解
2019/07/20 PHP
window.location和document.location的区别分析
2008/12/23 Javascript
JQuery开发的数独游戏代码
2010/10/29 Javascript
ParseInt函数参数设置介绍
2014/01/02 Javascript
JS实现判断碰撞的方法
2015/02/11 Javascript
js操作css属性实现div层展开关闭效果的方法
2015/05/11 Javascript
js拖拽的原型声明和用法总结
2016/04/04 Javascript
js实现控制textarea输入字符串的个数,鼠标按下抬起判断输入字符数
2016/10/25 Javascript
JS正则表达式判断有效数实例代码
2017/03/13 Javascript
Bootstrap常用组件学习(整理)
2017/03/24 Javascript
vue better-scroll插件使用详解
2018/01/25 Javascript
使用D3.js+Vue实现一个简单的柱形图
2018/08/05 Javascript
javascript(基于jQuery)实现鼠标获取选中的文字示例【测试可用】
2019/10/26 jQuery
JavaScript冒泡算法原理与实现方法深入理解
2020/06/04 Javascript
VSCode插件安装完成后的配置(常用配置)
2020/08/24 Javascript
[12:36]《DOTA2》国服注册与激活指南全攻略
2013/04/28 DOTA
浅析Python中的多重继承
2015/04/28 Python
Pthon批量处理将pdb文件生成dssp文件
2015/06/21 Python
基于进程内通讯的python聊天室实现方法
2015/06/28 Python
Python+Socket实现基于UDP协议的局域网广播功能示例
2017/08/31 Python
Python元组知识点总结
2019/02/18 Python
写好自荐信的几个要点
2013/12/26 职场文书
工作中个人的自我评价
2013/12/31 职场文书
医药销售自我评价200字
2014/09/11 职场文书
社区安置帮教工作总结2015
2015/05/20 职场文书
关于办理居住证的介绍信模板
2019/11/27 职场文书
纯html+css实现打字效果
2021/08/02 HTML / CSS
vue实现Toast组件轻提示
2022/04/10 Vue.js
在SQL Server中使用 Try Catch 处理异常的示例详解
2022/07/15 SQL Server