表单input中disabled提交后得不到值的解决办法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了表单input中disabled提交后得不到值的解决办法相关的知识,希望对你有一定的参考价值。

参考技术A input的字段当为disabled时时无法获取数值得,所以尽量不要用这个,我们可以用readonly带替代,即可解决这类问题。

放在form表单中提交后得不到该值。 

将disabled="disabled" 改为 readonly = "readonly" 即可 ,按照W3C的规范

设置为disabled的input将会有下面的限制: 

1.不能接收焦点 

2.使用tab键时将被跳过 

3.可能不是successful的 

设置为readonly的input将会有下面的限制: 

1.可以接收焦点但不能被修改 

2.可以使用tab键进行导航 

3.可能是successful的 

只有successful的表单元素才是有效数据,也即是可以进行提交。disabled和readonly的文本输入框只能通过脚本进行修改value属性。 

一、来看看这两个属性在效果和使用上的区别。

1.readonly是要锁定这个控件,通过在界面上无法修改他(但是通过javascript可以修改他)。

2. disabled 和readonly有相同的地方也是可以锁定这个控件用户不能改变他的值,但是disabled的更彻底一些,他是要使你完全不能使用他,包括改变他的背景颜色(不信,你去修改一个被disabled掉的input文本框,你发现你是徒劳),如果是checkbox则不能选中他。

3. 所有控件都有disabled 属性,但是不一定有readonly属性,如select 下拉框。

(1)text

(2) checkBox

(3)select下拉选择框(这里只能显示disabled和非disabled的区别,因为select 没有readonly属性

(4)button按钮

说明:点击被readonly掉的按钮照样可以触发事件,但是被disabled掉的按钮就无法使用了不管上面有没有事件。

(5)div

说明:将div设置disabled属性之后,整个div都灰掉了,但是文本框里面还是可以输入内容的。

注意:select下拉选择框是没有readonly属性的

参考原文链接: https://blog.csdn.net/u014185140/article/details/51985147

input为disabled提交后得不到该值的解决方法

input的字段当为diabled时时无法获取数值得,所以最近不要用这个,我们可以用readonly带替代,即可解决这类问题

放在form表单中提交后得不到该值。
将disabled=”disabled” 改为 readonly = “readonly” 即可
按照W3C的规范:http://www.w3.org/TR/REC-html40/interact/forms.html#h-17.12
设置为disabled的input将会有下面的限制:
不能接收焦点
使用tab键时将被跳过
可能不是successful的

设置为readonly的input将会有下面的限制:
可以接收焦点但不能被修改
可以使用tab键进行导航
可能是successful的
只有successful的表单元素才是有效数据,也即是可以进行提交。disabled和readonly的文本输入框只能通过脚本进行修改value属性。 

以上是关于表单input中disabled提交后得不到值的解决办法的主要内容,如果未能解决你的问题,请参考以下文章

input设置disabled,经过strus2提交到后台,后台取不到值

input from 表单提交 使用 属性 disabled="disabled" 后台接收不到name="username"的

工作总结 表单提交中 Input 设置 disabled readonly

表单中Readonly和Disabled的区别

表单中Readonly和Disabled的区别

html input readonly 和 disable的区别