css readonly和disabled的区别
一、前言
要说readonly和disabled的区别,就需要先说说两者的联系;
两个属性都可以作用于input等表单元素上,都使得元素成为“不可用”的状态;
两者的字面意义先介绍一下:
readonly表示“只读”,一般表示对于文字内容只读,即不可更改内容,对于非文字的表单“只读”与“不只读”似乎没有啥区别;
disabled表示“使残废,使无效”,都残废了,那还管你有没有文字内容,都得残掉。
下面来介绍介绍两者的区别:
二、正文
readonly和disabled作用元素的范围不同
由上图可见,readonly并没有对input[type="button"]产生作用,按钮效果仍然在,并没有“不可用”;
而disabled直接对input[type="button"]的按钮效果产生作用,导致按钮不可点击。那么两者的作用范围区别在哪呢?
disabled
属性可以作用于所有的表单元素。readonly
属性只对<input type="text">、<input type="number">、<textarea>和<input type="password">等可以输入的表单元素
有效。readonly和disabled对元素的作用程度不同
//添加input===readonly
document.write('<br/><br/><input type="number" name="number1" readonly="readonly" value="button" placeholder="123456">') //添加input===disabled
document.write('<br/><br/><input type="number" name="number2" disabled="disabled" value="button" placeholder="123456">') //给input添加blur事件==边框变成红色===readonly
document.querySelector("input[name='number1']").addEventListener("blur", function(){
document.querySelector("input[name='number1']").style.cssText = "border: 1px solid red";
}) //给input添加blur事件==边框变成红色===disabled
document.querySelector("input[name='number2']").addEventListener("blur", function(){
document.querySelector("input[name='number2']").style.cssText = "border: 1px solid red";
})通过上面的测试可以知道,
readonly
属性只是将元素设置为只读,可以获取焦点、失去焦点。而disabled
属性直接阻止对元素的一切操作。disabled
属性阻止对元素的一切操作,例如获取焦点,点击事件等等。readonly
属性只是将元素设置为只读,其他操作正常。readonly和disabled对表单提交的作用不同
disabled
属性可以让表单元素的值无法被提交。readonly
属性则不影响提交问题。
这个需要进行测试。。。
三、总结
readonly 属性规定输入字段为只读。
只读字段是不能修改的。不过,用户仍然可以使用 tab 键切换到该字段,还可以选中或拷贝其文本。
readonly 属性可以防止用户对值进行修改,直到满足某些条件为止(比如选中了一个复选框)。然后,需要使用 JavaScript 消除 readonly 值,将输入字段切换到可编辑状态。
readonly 属性可与 <input type="text"> 或 <input type="password"> 配合使用。
disabled 属性规定应该禁用 input 元素。
被禁用的 input 元素既不可用,也不可点击。可以设置 disabled 属性,直到满足某些其他的条件为止(比如选择了一个复选框等等)。然后,就需要通过 JavaScript 来删除 disabled 值,将 input 元素的值切换为可用。
注释:disabled 属性无法与 <input type="hidden"> 一起使用。
css readonly和disabled的区别的更多相关文章
- Readonly和disabled的区别 display:none和visible:hidden的区别
怎样使input中的内容为只读,也就是说不让用户更改里面的内容. <input type="text" name="input1" value=" ...
- 转:表单中Readonly和Disabled的区别(HTML中使用javascript解除禁止input输入框代)
转:表单中Readonly和Disabled的区别 参考资料: disabled和readonly区别: 参考博文1地址:http://blog.csdn.net/symgdwyh/article/d ...
- 【转载】表单中 Readonly 和 Disabled 的区别
今天写代码,遇到表单提交的问题,某个字段在不同的情况下,要传递不同的值进行赋值,试过一些方法都有些问题,后来请教前端同学,使用 disabled 这个属性终于搞定了问题,查到一篇讲解 readonly ...
- web基础----->readonly与disabled的区别
readonly和Disabled是用在表单中的两个属性,它们都能够做到使用户不能够更改表单域中的内容.但是它们之间有着微小的差别,今天我们通过案例来学习一下. readonly和Disabled的区 ...
- 表单中Readonly和Disabled的区别(转载)
Readonly和Disabled是用在表单中的两个属性,它们都能够做到使用户不能够更改表单域中的内容.但是它们之间有着微小的差别,总结如下: Readonly只针对input(text / pass ...
- Readonly和Disabled的区别
readonly 把输入的字段设为只读,但是没有禁用 readonly=” readonly”; disabled 禁用一个input元素. disabled="disabled" ...
- 表单中Readonly和Disabled的区别(转)
今天做form提交的时候,用到了disabled,form提交的时候怎么获取都是null,后来用hidden解决了这个问题,但是考虑到为什么,最后找到了原因,转载一篇文章,说明一下 原文:http:/ ...
- (网页)readonly和disabled的区别(转)
转自脚本之家: 标签的readonly和disabled属性的区别: 在表单元素中,readonly和disable有类似之处,因为它们都可以将一些表单元素设置为"不可用"状态,当 ...
- readonly与disabled的区别
一. 范围不同 readonly 只对 <input> 和 <textarea> 标签有效 disabled 对所有表单元素都有效, 包括:<input>, < ...
随机推荐
- 利用mysqldump备份mysql
mysqldump备份机制:通过给定的参数信息和系统表数据,来一张表一张表地获取数据并生成insert语句插入备份文件中,这样由于时间点不一致,就会导致数据不一致,然而对于一个要求强一致性的系统来说, ...
- CentOS yum源设定使用方法的整理(转)
CentOS yum更新了很多版本更新,我本人认为CentOS yum很好使的文件系统,在此向大家推荐CentOS应该是做为服务器的linux的佼佼者.CentOS采用的二进制包是rpm,不过包的依赖 ...
- javascript基础-js函数
一.创建函数的方式 1)普通方式 function cal( num1, num2 ) { return num1+num2; } 2)使用变量初始化方式 var plus = function(nu ...
- java多线程(2) 线程同步
我们对线程访问同一份资源的多个线程之间,来进行协调的这个东西,就是线程同步. 例子1:模拟了多个线程操作同一份资源,可能带来的问题: package com.cy.thread; public c ...
- mysql字符集和校对规则(Mysql校对集)
字符集的概念大家都清楚,校对规则很多人不了解,一般数据库开发中也用不到这个概念,mysql在这方便貌似很先进,大概介绍一下简要说明 字符集和校对规则 字符集是一套符号和编码.校对规则是在字符集内用于比 ...
- POJ 3061 Subsequence(尺取法)
Subsequence Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 18145 Accepted: 7751 Desc ...
- 通过socket实现处理多个连接,send和resv都是有数量限制的
我们现在先来实现,跟一个人来来回回不停的讲电话. 客户端,通过循环来输入多次命令: client.recv(1024)每次只接收1K的内容 服务端来改成多次接收:如果你写成如下的代码: 那么造成的结果 ...
- Hashtable、HashMap
JDK1.6 API public class Hashtable<K,V>extends Dictionary<K,V>implements Map<K,V>, ...
- IO模型之阻塞IO
1. IO模型的介绍 首先我们先来熟悉下什么是 同步,异步.阻塞.非阻塞 的知识: 同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞 ...
- Linux无法登录,显示module is unknown,一闪而过
1.使用单用户模式登录系统(不作介绍) 2.查看日志:vim /var/log/secure 3.记忆起曾经配置oracle添加过该参数 vim/etc/pam.d/login中加入了: sessio ...