input框的disabled问题?

我的html代码为:

<input type="text" disabled="">

这里我并没有加disabled=“disabled”属性啊,为什么浏览器直接给识别成了只读状态呢,有点郁闷,在编辑器中是这样的,但是到了网页里就变成了:

<input type="text" disabled>

有没有人知道这是为什么。chrome版本是30.0.1599.69

阅读 4.8k
4 个回答

楼上说的都没错,元素中加入disabled属性不管值是什么都会被禁用掉,你说的当disabled=""到谷歌浏览器里看变成disabled是因为chrome会自动把赋值为空字符串的属性显示成只有属性名,比如你html里再加个value为空的属性:

<input value="" disabled="" >

到了谷歌浏览器查看时,就变成了

<input value disabled >

这是谷歌浏览器的显示问题,看起来更简洁,像IE里还是会正常显示disabled="",但是不管显示不显示disabled的值,只要设置了disabled属性,都是禁用状态的。

主要是由于PettyCashVoucherInput.aspx页面的SetItemState()方法中设置表单元素激活时使用的语句setAttribute("disabled", "")并不是兼容写法,正确的写法应该是
element.removeAtrribute('disabled'); 或者 element.disabled = false;

disable readonly 等属性只要你添加上就会生效,不管你的值是什么,只要有就会生效

事实上 disableddisabled="无论什么内容" 效果都是一样。要想可编辑,直接<input /> 就行了

你添加了disable的属性就是禁用了input
如果不想禁用,直接用<input type="text" />即可

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题