html readonly和disabled的区别

时间:2024-01-20 14:37:57

今天我创建了一个html表单,其中一个字段是sequence number, 这个字段是用ajax异步从后台获取自动生成的,我不希望用户修改这个值,于是我使用了如下html代码来处理:

<form:input path="sequenceNumber" id="sequenceNumber" disabled="true"/>

现在问题来了,我的表单提交到spring mvc的controller之后竟然发现DTO pojo的sequenceNumber字段为空,这是怎么一回事呢?百思不得其解之际我使用了如下html代码来试试运气:

<form:input path="sequenceNumber" id="sequenceNumber" readonly="true"/>

没想到这次实体类中的sequenceNumber有值了,为了查明问题的原因,上W3CSchool上面脑补了这两个属性的区别:

disabled 属性规定应该禁用 input 元素。被禁用的 input 元素既不可用,也不可点击。

readonly 属性规定输入字段为只读。只读字段是不能修改的。

很明显,一个是禁用,另一个是只读,区别还是蛮大的。