removeAttr("disabled") 对 input控件无效


disabled对于所有的表单元素都有效,包括select,radio, checkbox, button等。
但是表单元素在使用了disabled后,当我们将表单以POST或GET的方式提交的话,这个元素的值不会被传递出去,而readonly会将该值传递出去

var fall = $('#XXX');

// 下面三种方法的结果都是 disabled= 'disabled'
fall.attr("disabled", true);
fall.attr("disabled", "disabled");
fall.attr("disabled", "");

// !!!!  下面两种方法会移除disable属性,但是控件依然不可用。
// IE9以上鼠标划过后可用。IE8始终不可用
fall.attr("disabled", false);
fall.removeAttr("disabled");

 

// 下面三种方法可以正常移除disable属性
fall.prop("disabled", false);
fall.prop("disabled", "");
fall.removeProp('disabled');


// 参数除了false和""外的任何值,都会置 disabled= 'disabled'
fall.prop("disabled", true);

// 或者使用DOM方法移除disable
fall[0].disabled = false;
fall[0].disabled = "";

总结:JQuery版本过低时,removeAttr("disabled") 会不起作用。此时,可以使用prop方法或者原生DOM方法来实现相关功能

 


免责声明!

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



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