readonly属性使输入字段只读但可提交,适用于text类输入;2. 与disabled不同,readonly不限制值提交且仅用于文本框;3. JavaScript通过readOnly属性动态控制。

在HTML表单中,readonly 属性用于指定一个输入字段为只读状态。这意味着用户不能修改该字段的内容,但与 disabled 不同的是,只读字段的值仍然可以随表单一起提交到服务器。
readonly属性的基本语法
只需要在表单元素(如 input 或 textarea)中添加 readonly 属性即可:
也可以显式写成:
ail" value="user@example.com" readonly="readonly">哪些表单元素支持readonly
以下常见的表单控件可以使用 readonly 属性:
立即学习“前端免费学习笔记(深入)”;
- input(类型为 text、email、number、date 等文本类输入)
- textarea
注意:radio、checkbox、select 等非文本输入控件不支持 readonly 属性,应使用 disabled 来限制操作。
readonly和disabled的区别
两者都能防止用户编辑内容,但有关键区别:
- readonly 字段的值会随表单提交;disabled 的字段值不会被提交
- readonly 只适用于文本类输入框;disabled 可用于几乎所有表单元素
- 浏览器通常不会对 readonly 元素改变样式,而 disabled 元素常显示为灰色
动态控制只读状态(JavaScript用法)
可以通过JavaScript动态开启或关闭只读状态:
var input = document.getElementById('myInput');input.readOnly = true; // 设置为只读
input.readOnly = false; // 取消只读
注意:JavaScript中属性名为 readOnly(驼峰命名),而非 readonly。
基本上就这些。使用 readonly 能有效保护某些自动填充或系统生成的数据不被误改,同时确保数据正常提交。合理使用它,能提升表单的可用性和安全性。











