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获取,使用参数形式传递