当前位置: 首页 > 编程笔记 >

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

贺俊楚
2023-03-14
本文向大家介绍vue 设置 input 为不可以编辑的实现方法,包括了vue 设置 input 为不可以编辑的实现方法的使用技巧和注意事项,需要的朋友参考一下

我用最笨的方法,先实现功能先,用两个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 为不可以编辑的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。

 类似资料:
  • 问题内容: 如果我想将cq5组件设置为在A页中可编辑但在B页中不可编辑,是否可以。 例如:在A页上,我有C组件,我们允许作者打开对话框并编辑该组件。但是我们不允许作者打开对话框来编辑页面B上的组件C。我尝试研究cq:EditConfig 链接,但这还不足以解决我的问题。 问题答案: 您可以在包含之前设置ComponentContext.BYPASS_COMPONENT_HANDLING_ON_IN

  • 问题内容: 我想控制基于树中级别的TreeTableView的某些行的样式。如果此行是Table根目录的第一级子级的一部分,则使用并应用样式。样式工作正常,但我也想禁用这些行的复选框。我能够,但是这也禁用了TreeItem的扩展,并且似乎没有任何作用。 编辑:据我了解,表必须设置为可编辑的,然后默认情况下列是可编辑的。但是,如果我设置了,否则我永远都看不到任何效果。setEditable的描述似乎

  • 问题内容: 我正在使用创建时间选择器。内的文字是可编辑的。但我想将设置为不可编辑,因为有机会给出无效的值。谁能帮我? 问题答案: 请尝试以下操作: 只要您自己没有通过调用更改微调器编辑器,此方法就应该起作用。 告诉我们这是否有帮助。

  • 本文向大家介绍PyQt5 QTableView设置某一列不可编辑的方法,包括了PyQt5 QTableView设置某一列不可编辑的方法的使用技巧和注意事项,需要的朋友参考一下 如下所示: 写一个代理。 设置一下就可以了。 以上这篇PyQt5 QTableView设置某一列不可编辑的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。

  • 本文向大家介绍利用jQuery实现可以编辑的表格,包括了利用jQuery实现可以编辑的表格的使用技巧和注意事项,需要的朋友参考一下 今天学习了利用jQuery实现可以编辑的表格这个例子。这个例子需求是这样的:在前台的表格中单击单元格便可修改其中的内容,回车键保存修改的内容,esc撤销保存的内容。原理:单击客户端表格单元格时,在单元格中添加一个文本框,并将单元格中原来的内容赋值给文本框,再进一步去修

  • 我有一个剑道网格,根据第一列中的值,COR ABA编号可以编辑也可以不编辑。因此,如果NOC代码=='C01',则COR ABA编号可编辑,否则不可编辑。 我通过在列和编辑处理程序中添加编辑事件来实现这一点,在不允许编辑的情况下,禁用HTML输入Kendo创建。(在栅格定义中,我有可编辑(true)开始)。我希望通过在网格的数据绑定事件中执行逻辑检查来实现这一点。也就是说,在绑定所有数据后,迭代数