当前位置: 首页 > backend >正文

添加禁用状态

使用jQuery给登录按钮添加禁用状态

以下是几种使用jQuery给登录按钮(.login_but)添加禁用状态的方法:

1. 基本禁用方法

javascript

// 禁用登录按钮
$('.login_but').prop('disabled', true);// 启用登录按钮
$('.login_but').prop('disabled', false);

2. 禁用并添加视觉反馈

javascript

// 禁用按钮并添加样式
$('.login_but').prop('disabled', true).css({'opacity': '0.6','cursor': 'not-allowed'});// 启用按钮并恢复样式
$('.login_but').prop('disabled', false).css({'opacity': '1','cursor': 'pointer'});

3. 使用类控制禁用状态(推荐)

首先在CSS中定义禁用样式:

css

/* CSS */
.login_but.disabled {opacity: 0.6;cursor: not-allowed;pointer-events: none;
}

然后使用jQuery:

javascript

// 禁用按钮
$('.login_but').prop('disabled', true).addClass('disabled');// 启用按钮
$('.login_but').prop('disabled', false).removeClass('disabled');

4. 表单提交时禁用按钮的完整示例

javascript

$(document).ready(function() {$('form').on('submit', function(e) {// 禁用按钮防止重复提交$('.login_but').prop('disabled', true).text('提交中...');// 这里可以添加AJAX提交逻辑// 提交完成后记得重新启用按钮});
});

5. 带状态检查的禁用/启用方法

javascript

// 检查表单是否有效来启用/禁用按钮
function updateLoginButtonState() {var isFormValid = true; // 这里替换为实际表单验证逻辑$('.login_but').prop('disabled', !isFormValid).toggleClass('disabled', !isFormValid);
}// 表单输入变化时检查
$('input').on('input', updateLoginButtonState);

注意事项

  1. 使用 prop() 而不是 attr() 来修改 disabled 属性,因为 prop() 更可靠

  2. 禁用按钮后,最好也添加视觉反馈(如改变透明度或光标样式)

  3. 如果是表单提交,确保在AJAX请求完成或失败后重新启用按钮

  4. 对于现代浏览器,可以使用 pointer-events: none 来完全禁用鼠标交互

选择哪种方法取决于您的具体需求和项目样式规范。推荐使用CSS类的方式,因为它将样式与行为分离,更易于维护。

http://www.xdnf.cn/news/12735.html

相关文章:

  • 【LeetCode】3170. 删除星号以后字典序最小的字符串(贪心 | 优先队列)
  • 开疆智能Ethernet/IP转Modbus网关连接质量流量计配置案例
  • 力扣刷题(第五十天)
  • 海伯森超高速工业相机:超高帧率,工业视觉新 “视” 力
  • Linux(生产消费者模型/线程池)
  • 一类简单而特殊数列的通项公式求法
  • 16-Oracle 23 ai-JSON-Relational Duality-知识准备
  • 靶场(二十)---靶场体会小白心得 ---jacko
  • Docker安装MQEX
  • MobaXterm配置跳转登录堡垒机
  • 详解二叉树遍历的非递归实现
  • Flask与Celery 项目应用(shared_task使用)
  • 知识改变命运?如何有规划的学好计算机专业?
  • 唯创知音WT2801芯片在家用血糖仪上的应用方案
  • 20250607在荣品的PRO-RK3566开发板的Android13系统下实现长按开机之后出现插入适配器不会自动启动的问题的解决
  • 【KiCad】立创封装导入KiCad
  • Linux编程:2、进程基础知识
  • Linux下如何查看一个端口被什么进程占用? 该进程又打开了哪些文件?
  • python入门(2)
  • 机器学习期末复习
  • 使用有限计算实现视频生成模型的高效训练
  • 【Latex】Windows/Ubuntu 绘制 eps 矢量图通用方法(drawio),支持插入 Latex 数学公式
  • C#合并CAN ASC文件:实现与优化
  • 中山大学美团港科大提出首个音频驱动多人对话视频生成MultiTalk,输入一个音频和提示,即可生成对应唇部、音频交互视频。
  • Google机器学习实践指南(机器学习四大特征工程核心解析)
  • Java 文件注释规范(便于生成项目文档)
  • 数据类型--实型
  • Linux与Windows切换使用Obsidian,出现 unexplained changes 问题的解决
  • Java IO流完全指南:从基础到进阶的全面解析
  • OpenLayers:封装Tooltip