微信小程序点击按钮动态切换input的disabled禁用/启用状态功能


Posted in Javascript onMarch 07, 2020

做微信小程序项目的时候遇到一个功能,个人信息资料的修改与保存。以下是说明及简化后的代码:

1.页面加载完成时,所有input处于禁用状态;

 2.点击编辑按钮时,文字切换成“保存”,身份证input保持始终不可修改状态(即禁用), 姓名input可以修改(即动态加载切换禁用/启用);

3.再次点击按钮文字切回“编辑”,所有input变为禁用状态。

以下是wxml部分

<view class="btn">
 <button bindtap="changeInfo">{{text}}</button> //绑定按钮的点击事件
 </view>
 <view>姓名:
 <input class="uName" type="text" disabled='{{isDisabled}}'/>
 </view>
 <view>身份证号:
 <input class="uIdentity" type="idcard" disabled='true'/>
 </view>

上段代码中,姓名为动态加载状态,所以disabled写成disabled='{{isDisabled}}' 而身份证input为始终不可修改的状态,所以disabled写死为disabled=‘true'

以下是js部分

Page({
 data: {
 isDisabled:true, //表示页面加载完成时disabled为启用状态
 text:"编辑" //表示按钮初始文字为编辑
 },
 changeInfo(e) { //点击事件发生时
 //一定要写成this.data.isDisabled,不然判断出不来
 if (!this.data.isDisabled) { //当disabled=false时
 this.setData({ 
 isDisabled: true, //修改isDisabled的值为true(即启用状态)
 text: "编辑" //文字修改为“编辑”
 })
 }
 else { //当disabled=true时
 this.setData({ 
 isDisabled: false, //修改isDisabled的值为false(即禁用状态)
 text: "保存" //文字修改为“保存”
 })
 }
 }

将用户信息数据动态加载到input框中,此过程中身份证始终保持不可修改的状态,姓名可根据按钮动态切换成编辑和保存的状态。

下面给大家补充点知识解决“微信小程序disabled属性不生效”的问题!

微信小程序中带disabled属性的表单组件有(点击可以进入官方文档):

button,checkbox,input,picker,radio,slider,switch,textarea

如果是固定禁用组件的话,直接放上disabled就好,简单粗暴,如:

1. 忽略值的情况:

<button disabled>测试</button>

2. 使用值的情况:

<!-- 正确 -->
<button disabled="{{true}}">测试</button>
<button disabled="{{false}}">测试</button>
 
<!-- 错误 -->
<button disabled="true">测试</button>
<button disabled="false">测试</button>

在以上的错误写法中,disabled="true"是有效的,但disabled="false"是无效的,接下来,我先解释一下:

微信小程序点击按钮动态切换input的disabled禁用/启用状态功能

注意一下官方文档中,disabled的值是布尔值(Boolean),而以上的字符串(String),赋值“false”就是true。

所以disabled="false"其实就是disabled=true,它的非禁用就无效了。

如果disabled的值是动态的灵活的话,如:

在index.js中,设置一个data数据变量

Page({
 data: {
 isDisabled: true
 }
})

在index.wxml中,用上表单组件

<input type="text" disabled="{{isDisabled}}" />
 
<button disabled="{{isDisabled}}">测试</button>

修改disabled的值

this.setData({
 isDisabled: false
})

总结

到此这篇关于微信小程序点击按钮动态切换input的disabled禁用/启用状态功能的文章就介绍到这了,更多相关微信小程序切换input内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
javascript中xml操作实现代码
Nov 21 Javascript
js实现图片无缝滚动特效
Mar 19 Javascript
javascript原生ajax写法分享
Apr 10 Javascript
用js读写cookie的简单方法(推荐)
Aug 08 Javascript
浅析上传头像示例及其注意事项
Dec 14 Javascript
基于Vue.js实现tab滑块效果
Jul 23 Javascript
JavaScript实现单击网页任意位置打开新窗口与关闭窗口的方法
Sep 21 Javascript
微信小程序MUI导航栏透明渐变功能示例(通过改变rgba的a值实现)
Jan 24 Javascript
记一次vue-webpack项目优化实践详解
Feb 17 Javascript
微信小程序按钮点击动画效果的实现
Sep 04 Javascript
layui(1.0.9)文件上传upload,前后端的实例代码
Sep 26 Javascript
Vue父子传递实例讲解
Feb 14 Javascript
微信小程序实现比较功能的方法汇总(五种方法)
Mar 07 #Javascript
微信小程序实现下滑到底部自动翻页功能
Mar 07 #Javascript
js实现选项卡效果
Mar 07 #Javascript
基于JS正则表达式实现模板数据动态渲染(实现思路详解)
Mar 07 #Javascript
js实现简单放大镜效果
Mar 07 #Javascript
js实现文字头像的生成代码
Mar 07 #Javascript
JavaScript队列结构Queue实现过程解析
Mar 07 #Javascript
You might like
[FAQ]PHP中的一些常识:类篇
2006/10/09 PHP
php汉字转拼音的示例
2014/02/27 PHP
php中convert_uuencode()与convert_uuencode函数用法实例
2014/11/22 PHP
通过chrome浏览器控制台(Console)进行PHP Debug的方法
2016/10/19 PHP
网上应用的一个不错common.js脚本
2007/08/08 Javascript
js 巧妙去除数组中的重复项
2010/01/25 Javascript
JS异常处理的一个想法(sofish)
2013/03/14 Javascript
让alert不出现弹窗的两种方法
2014/05/18 Javascript
jQuery实现灰蓝风格标准二级下拉菜单效果代码
2015/08/31 Javascript
第二篇Bootstrap起步
2016/06/21 Javascript
json对象与数组以及转换成js对象的简单实现方法
2016/06/24 Javascript
js断点调试心得分享(必看篇)
2017/12/08 Javascript
微信小程序template模版的使用方法
2019/04/13 Javascript
微信JS-SDK实现微信会员卡功能(给用户微信卡包里发送会员卡)
2019/07/25 Javascript
微信小程序一周时间表功能实现
2019/10/17 Javascript
[01:41]DOTA2 2015国际邀请赛中国区预选赛第三日战报
2015/05/28 DOTA
[00:52]DOTA2国际邀请赛
2020/02/21 DOTA
Python实现生成随机日期字符串的方法示例
2017/12/25 Python
Python使用base64模块进行二进制数据编码详解
2018/01/11 Python
python使用scrapy发送post请求的坑
2018/09/04 Python
Python实现App自动签到领取积分功能
2018/09/29 Python
Python多进程写入同一文件的方法
2019/01/14 Python
Python面向对象总结及类与正则表达式详解
2019/04/18 Python
Pandas之Fillna填充缺失数据的方法
2019/06/25 Python
移动端html5 meta标签的神奇功效
2016/01/06 HTML / CSS
澳大利亚足球鞋和服装购物网站:Ultra Football
2018/10/11 全球购物
中国汽车租赁行业头部企业:一嗨租车
2019/05/16 全球购物
PHP如何去执行一个SQL语句
2016/03/05 面试题
神路信息Java面试题目
2013/03/31 面试题
环境工程毕业生自荐信
2013/11/17 职场文书
幼儿园教师工作制度
2014/01/22 职场文书
教师岗位聘任书范文
2014/03/29 职场文书
群众路线自查报告及整改措施
2014/11/04 职场文书
向女朋友道歉的话
2015/01/20 职场文书
红色故事汇观后感
2015/06/18 职场文书
win11如何查看端口是否被占用? Win11查看端口是否占用的技巧
2022/04/05 数码科技