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 相关文章推荐
jQuery 入门讲解1
Apr 15 Javascript
JQuery 初体验(建议学习jquery)
Apr 25 Javascript
html数组字符串拼接的最快方法
Sep 16 Javascript
javascript 设置文本框中焦点的位置
Nov 20 Javascript
IE事件对象(The Internet Explorer Event Object)
Jun 27 Javascript
鼠标悬停小图标显示大图标
Jan 22 Javascript
dul无法加载bootstrap实现unload table/user恢复
Sep 29 Javascript
AngularJS 打开新的标签页实现代码
Sep 07 Javascript
用vue封装插件并发布到npm的方法步骤
Oct 18 Javascript
vue keep-alive 动态删除组件缓存的例子
Nov 04 Javascript
Angular封装表单控件及思想总结
Dec 11 Javascript
Vue实现可移动水平时间轴
Jun 29 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 session和cookie使用说明
2010/04/07 PHP
php后台如何避免用户直接进入方法实例
2013/10/15 PHP
Python中使用django form表单验证的方法
2017/01/16 PHP
PHP 文件上传限制问题
2019/09/01 PHP
不用ajax实现点击文字即可编辑的方法
2007/12/16 Javascript
比较全面的event对像在IE与FF中的区别 推荐
2009/09/21 Javascript
js 数据类型转换总结笔记
2011/01/17 Javascript
jQuery 拖动层(在可视区域范围内)
2012/05/24 Javascript
JS简单的图片放大缩小的两种方法
2013/11/11 Javascript
jquery操作select大全
2014/04/25 Javascript
jquery的attr方法禁用表单元素禁用输入内容
2014/06/23 Javascript
20分钟打造属于你的Bootstrap站点
2016/07/27 Javascript
jQuery实现淡入淡出的模态框
2017/02/09 Javascript
H5实现中奖记录逐行滚动切换效果
2017/03/13 Javascript
bootstrap modal+gridview实现弹出框效果
2017/08/15 Javascript
详解Vue路由钩子及应用场景(小结)
2017/11/07 Javascript
JS简单添加元素新节点的方法示例
2018/02/10 Javascript
select2 ajax 设置默认值,初始值的方法
2018/08/09 Javascript
vue仿element实现分页器效果
2018/09/13 Javascript
vue观察模式浅析
2018/09/25 Javascript
vue根据进入的路由进行原路返回的方法
2018/09/26 Javascript
js时间转换毫秒的实例代码
2019/08/21 Javascript
js实现打字小游戏
2019/12/17 Javascript
element-ui和vue表单(对话框)验证提示语(残留)清除操作
2020/09/11 Javascript
python用字典统计单词或汉字词个数示例
2014/04/22 Python
简单介绍Python2.x版本中的cmp()方法的使用
2015/05/20 Python
Python中is和==的区别详解
2018/11/15 Python
Python线程指南分享
2019/11/19 Python
关于Tensorflow 模型持久化详解
2020/02/12 Python
python查看矩阵的行列号以及维数方式
2020/05/22 Python
日本必酷网络直营店:Biccamera
2019/03/23 全球购物
企划专员岗位职责
2013/12/09 职场文书
主题实践活动总结
2014/05/08 职场文书
2014年巴西世界杯口号
2014/06/05 职场文书
2014年物业管理工作总结
2014/11/21 职场文书
英语辞职信怎么写
2015/02/28 职场文书