How should disabled
act?

2020-02-14 01:38发布

问题:

I noticed the following bug when using $(selector).children().attr("disabled", "disabled") where the children happened to contain a <div>.

Fiddle

<div disabled="disabled">
    <input type="text" value="RAGE" />
</div>

Basic testing says FF4/Chrome enable the field. IE9 disables the field.

What is the expected behaviour?

Same for any other non form element (<input>, <select>, etc)

回答1:

<div> elements do not have a disabled attribute according to the HTML specification. The expected behavior is to prevent your markup from validating correctly.

However, the new HTML5 specification allows for <fieldset> to have a disabled attribute, which disables any nested input fields. It's not widely supported yet though, so you won't be able to rely on this feature for a while.



回答2:

There is no disabled attribute for the div element. So it should have no effect.



标签: html dom input