我有<input type = 'file'>
。要启用/禁用它,我使用jQuery("#my_input").prop('disabled' ,true/false)
。
如果我禁用它,然后刷新页面,jQuery输出:
console.log(jQuery("#my_input").prop('disabled' )) ==> true
即使html中包含不的“禁用”道具。
清除缓存无法解决问题。
答案 0 :(得分:4)
Firefox长期以来一直通过刷新保存输入值,现在最新的版本还通过刷新保存了input
/ button
的禁用状态。
我不确定这是故意还是错误,但暂时解决方法是在DOM就绪处理程序中将输入“disabled
状态设置为默认状态。”
jQuery(function($) {
$("#my_input").prop('disabled', false);
});
演示问题:Fiddle(使用Firefox打开)
现在使用上面的代码段修复:Fiddle
您也可以将autocomplete="off"
应用于该元素,其禁用状态将不会通过刷新保留。
请注意,这将阻止元素中的任何形式的自动完成。当然,这是文件输入和按钮的绝佳解决方案,但是根据您的使用情况(例如,当涉及文本输入时),您可能更喜欢前一种解决方案。感谢@dsdsdsdsd提示!
P.S。已经向Mozilla报告过:Bugzilla ticket。
答案 1 :(得分:0)
Firefox也应该在html中包含它。
使用时会发生什么:
jQuery("#my_input").attr('disabled' ,true)