u014748857
TXGadair
2021-06-09 19:17
采纳率: 50%
浏览 28

动态 赋值 ref 改变 v-for 里面 input 的 disabled的 值?

 

赋值

:ref="`input_in_${index}`"

查找:

for(var i=0;i<this.$refs[`input_in_${index}`].length;i++){
	this.$refs[`input_in_${index}`][i].disabled = true
}

以上是我的方法,是成功改变了,但是不仅报错,而且,如果点击了页面里面的其他控件,这个赋值就会消失~~

求大佬解决~~

||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

<el-input placeholder="请输入内容" v-model="item.count" :ref="`input_in_${index}`" disabled>
         <template slot="append">课时</template>
</el-input>
setTimeout(function() {
		console.log(this.$refs)
		if (this.classe[index].count == null) {
		    console.log('1')
		        for (var i = 0; i < this.$refs[`input_in_${index}`].length; i++) {
		    	    this.$refs[`input_in_${index}`][i].disabled = false
		        }
		    } else {
				console.log('2')
				return false;	
			}
}.bind(this), 500)

默认 是 true 然后符合条件 就变成 false,效果是有了,但是,还是和上面一样,点击页面其它控件,又会变成 true ,并且报错。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • qq_30027645
    qq_30027645 2021-06-09 19:55

    看你这个写法应该是v-for循环显示标签,在v-for的数组中每个对象加个disabled属性,满足条件了将其设置为true.

    点赞 评论
  • QA_Assistant
    有问必答小助手 2021-06-10 11:06

    您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

    如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

    ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

    点赞 评论

相关推荐