(转)html 表单提交时,无法获取到disabled属性的input值

input的字段当为disabled是,无法获取值,无法改变值,所以在表单提交时,获取不到值。可以用randomly解决这个问题。

<input name="country" id="country" size=12 value="demo" disabled="disabled" >

但是将disabled = "disabled"换成randomly="randomly"就可以成功获取到值。

根据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 下拉框。

4)button按钮  

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

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

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

转载至:

https://blog.csdn.net/u014185140/article/details/51985147

原文地址:https://www.cnblogs.com/li-yi-learn/p/9064445.html

时间: 2024-09-30 15:26:06

(转)html 表单提交时,无法获取到disabled属性的input值的相关文章

表单提交时,更新的操作

//原程序的写法,意思就是,先查出数据库里面的记录,然后用提交过来的数据进行覆盖数据库里面的值,调用的方法是SetAttribute public IActionResult UpdateSaleAfterDTID(int id, string proname, string isupdate, IFormCollection values, int orderid) { if (!string.IsNullOrEmpty(isupdate)) { //表单提交时触发事件 var fchelpA

表单提交时如何将错误信息传递到页面中,并且保存原来提交数据

曾经何时,你还有我或许都在困惑,如何方便的将验证不通过的表单信息再返回到前台页面,例如我注册一个账号,辛辛苦苦填写了N多项,一个格式验证没有通过,一切都需要充填,虽然Ajax可以解决这个问题,但是我们总不能把所有表单提交都弄成ajax,更何况有若干人就是没事把javascript给禁止了.哎哎,好了解决方案来了,下面以用户登录为例,说说我的解决方案. 服务器端用nodejs实现: login.html 简单的提交表单 <form action="" id="loginF

表单提交时编码类型enctype详解

很早以前,当还没有前端这个概念的时候,我在写表单提交完全不去理会表单数据的编码,在action属性里写好目标URL,剩下的啊交给浏览器吧~但是现在,更多时候我们都采用Ajax方式提交数据,这种原始的方式仅仅被当成优雅降级的产物. 当我们用异步方式提交表单,就需要稍微关注一下表单数据的编码问题了.回想一下,在写回调函数时是不是有根据过请求的Content-Type写不同业务逻辑的经历,那这个Content-Type和表单的编码有什么联系吗?有没有在明明前端已经发数据给后端了,后端的小伙伴死活取不到

表单提交时submit按钮的值没有被提交

FORM表单中,submit提交的时候,有时候有值,有时候无值 FORM表单中,submit的name是Submit.如下<input type="submit" name="Submit" value="提交表单" /> 1.出现的几种情况 1.当点击submit按钮时,FORM被提交,提交后获取的数组中有Submit下标的值 2.回到FORM表单,直接敲回车提交,这时候发现获取的数组中没有Submit下标. 3.在浏览器版本低的情

前端表单提交数据~php获取表单内容

上图代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <HEAD><meta http-equiv="C

使用 HttpClient 进行表单提交时,遇到的问题

问题 在开发微信支付的小微商户进件接口时,需要通过表单来上传身份证图片等数据.在微信支付接口文档也说明了,需要使用 multipart/form-data 的方式发送请求..NET 提供了 MultipartFormDataContent 类型,帮助我们构建表单请求,故有以下代码: var form = new MultipartFormDataContent() { {new StringContent("Value"),"Name}, {new ByteArrayCont

表单提交时判断

<input type="submit" id="myBtn" />换成: <input type="button" id="myBtn" />用 $("#myBtn").click(function(){   ...//判断验证}); 表单提交js: function formSubmit(){ if(flag=="1"){ $("#form"

【教训】 form表单提交时,action url中参数无效

今天提交一个表单,内容参考如下: <form action="add.php?a=123&b=456">     <input type="hidden" name='user_id' value="46" />     <input type="hidden" name='user_name' value="snsgou" />     ...     <

(教训) form表单提交时,action url中参数无效

今天提交一个表单,内容参考如下: <form action="add.php?a=123&b=456">    <input type="hidden" name='user_id' value="46" />    <input type="hidden" name='user_name' value="snsgou" />    ...    <inpu