form表单元素中disabled的元素的值不会提交到服务器


1.表单元素中disabled的元素的值不会提交到服务器,后台获取的值为null

<form id="myForm" action="#" method="post">

  <input name="username" disabled="disabled" />  

  <input type="submit" value="提交"/>

</form>

在form表单里,如果对input加入disabled="disabled"或disabled="true"等属性,form表单提交的时候,就不会传值到后台。

 

2.原因:在HTML页面的某元素加入了disable的属性,那么这个元素只是单单的去给用户去显示,当表单提交时,这个元素不会提交给后台去处理.所以当元素加入了disabled属性,后台是无法得到这个属性的值.

3.解决方法:

  A.再写一个隐藏属性,一个用于显示,一个用于传值。

  B.<input name="username" readonly="readonly" />  设置只读

  可用readonly代替,background-color:#cccccc;加上灰色背景色就可以达到disable的效果

  C.在form表单提交时利用js/jq将disabled属性修改

//js
document.getElementById("username").disabled="";
//jq
$("#username").attr("disabled",false);

  D.disable属性的值用js/jq获取,使用参数形式传递


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM