vue 设置 input 为不可以编辑的实现方法


Posted in Javascript onSeptember 19, 2019

我用最笨的方法,先实现功能先,用两个input,一个可以编辑,一个不可以编辑,失去焦点后隐藏可以点击的那个,点“编辑”时,显示可以编辑的那个input

<div class="edit-item">
      <input type="text" id="group-name" v-model="groupName" class="edit-input" disabled v-show="!isEditGroupName" >
      <input type="text" id="group-name2" v-model="groupName" class="edit-input" ref="groupName"
      @input="changeValue"
      @change="editGroupNameSave(groupInfo.name)" v-show="isEditGroupName" @blur="isEditGroupName = false">
      <span @click="editGroupName"><icon-svg name="icon-kaka-compile" icon-style="edit-ico"></icon-svg></span>
     </div>
export default {
  name: 'RightSideBar',
  props: {
  },
  data () {
   return {
    isEditGroupName: false, // 修改群名称
   }
  },
  computed: {
   // 群名称
   groupName: {
    get () {
     return this.$store.getters.groupSetInfo.name
    },
    set (val) {
     // 使用vuex中的mutations中定义好的方法来改变
     let groupSetInfo = this.$store.getters.groupSetInfo
     let copyMyinfo = Object.assign({}, groupSetInfo)
     copyMyinfo.name = val
     this.$store.dispatch('groupSetInfo', copyMyinfo)
    }
   },
  },
  methods: {
   changeValue () {
    let leng = this.validateTextLength(this.groupName)
    if (leng >= 15) {
     this.$refs.groupName.maxLength = leng
    } else {
     this.$refs.groupName.maxLength = 30
    }
   },
   validateTextLength (value) {
    // 中文、中文标点、全角字符按1长度,英文、英文符号、数字按0.5长度计算
    let cnReg = /([\u4e00-\u9fa5]|[\u3000-\u303F]|[\uFF00-\uFF60])/g
    let mat = value.match(cnReg)
    let length
    if (mat) {
     length = (mat.length + (value.length - mat.length) * 0.5)
     return length
    } else {
     return value.length * 0.5
    }
   },
   // 打开编辑
   editGroupName () {
    this.isEditGroupName = true
    let nickNameInput = document.querySelector('#group-name2')
    setTimeout(() => {
     nickNameInput.focus()
    }, 0)
   },
   // 保存群名修改
   editGroupNameSave (data) {

   },

  },
  created () {
 }

vue 设置 input 为不可以编辑的实现方法

vue 设置 input 为不可以编辑的实现方法

以上这篇vue 设置 input 为不可以编辑的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
arguments对象
Nov 20 Javascript
javascript Demo模态窗口
Dec 06 Javascript
浅谈JavaScript函数参数的可修改性问题
Dec 05 Javascript
基于iframe实现类似于ajax的页面无刷新
May 31 Javascript
DOM基础教程之事件对象
Jan 20 Javascript
jQuery查看选中对象HTML代码的方法
Jun 17 Javascript
JavaScript实现复制文章自动添加版权
Aug 02 Javascript
js改变html的原有内容实现方法
Oct 05 Javascript
微信小程序实现图片翻转效果的实例代码
Sep 20 Javascript
vue多个元素的样式选择器问题
Nov 29 Javascript
js实现炫酷光感效果
Sep 05 Javascript
js 数组 fill() 填充方法
Nov 02 Javascript
node 标准输入流和输出流代码实例
Sep 19 #Javascript
解决layui数据表格排序图标被超出的表头挤出去的问题
Sep 19 #Javascript
微信小程序3D轮播实现代码
Sep 19 #Javascript
layui 实现表格某一列显示图标
Sep 19 #Javascript
微信小程序防止多次点击跳转(函数节流)
Sep 19 #Javascript
layui按条件隐藏表格列的实例
Sep 19 #Javascript
微信小程序和H5页面间相互跳转代码实例
Sep 19 #Javascript
You might like
PHP中for循环语句的几种变型
2006/11/26 PHP
php+xml编程之xpath的应用实例
2015/01/24 PHP
PHP中配置IIS7实现基本身份验证的方法
2015/09/24 PHP
thinkphp微信开之安全模式消息加密解密不成功的解决办法
2015/12/02 PHP
又拍云异步上传实例教程详解
2016/04/19 PHP
PHP上传图片时判断上传文件是否为可用图片的方法
2016/10/20 PHP
用javascript实现读取txt文档的脚本
2007/07/20 Javascript
使用jquery.upload.js实现异步上传示例代码
2014/07/29 Javascript
JavaScript用JQuery呼叫Server端方法示例代码
2014/09/03 Javascript
每天一篇javascript学习小结(RegExp对象)
2015/11/17 Javascript
JavaScript蒙板(model)功能的简单实现代码
2016/08/04 Javascript
JS解决移动web开发手机输入框弹出的问题
2017/03/31 Javascript
详解JS数据类型的值拷贝函数(深拷贝)
2017/07/13 Javascript
自适应布局meta标签中viewport、content、width、initial-scale、minimum-scale、maximum-scale总结
2017/08/18 Javascript
Node.js+jade抓取博客所有文章生成静态html文件的实例
2017/09/19 Javascript
Angularjs cookie 操作实例详解
2017/09/27 Javascript
如何将你的AngularJS1.x应用迁移至React的方法
2018/02/01 Javascript
Fundebug支持监控微信小程序HTTP请求错误的方法
2019/02/21 Javascript
使用koa2创建web项目的方法步骤
2019/03/12 Javascript
详解nvm管理多版本node踩坑
2019/07/26 Javascript
js实现内置计时器
2019/12/16 Javascript
微信小程序wx.getUserInfo授权获取用户信息(头像、昵称)的实现
2020/08/19 Javascript
深入理解javascript中的this
2021/02/08 Javascript
Python正则表达式匹配HTML页面编码
2015/04/08 Python
python实现汉诺塔递归算法经典案例
2021/03/01 Python
​如何愉快地迁移到 Python 3
2019/04/28 Python
运行tensorflow python程序,限制对GPU和CPU的占用操作
2020/02/06 Python
TensorFlow使用Graph的基本操作的实现
2020/04/22 Python
Python中的面向接口编程示例详解
2021/01/17 Python
CSS3绘制有活力的链接下划线
2016/07/14 HTML / CSS
市场部管理制度
2014/02/02 职场文书
2014年财政工作总结
2014/12/10 职场文书
简历自荐信范文
2015/03/09 职场文书
离婚起诉书范本
2015/05/18 职场文书
为什么代码规范要求SQL语句不要过多的join
2021/06/23 MySQL
python百行代码实现汉服圈图片爬取
2021/11/23 Python