9

要素を無効にしたり、要素を要求したりしないでください。無効になっている場合、ユーザーはどのようにして要素を有効にすることができるのでしょうか?

ただし、<select>ユーザーに選択してもらいたい製品がいくつかあります。製品の 1 つを選択する<select>と、製品のモデルが入力され、有効になり、製品に 1 つ以上のモデルがある場合にのみ必要になります。それ以外の場合、モデル選択は無効になり、空になります。

私は自分のコードが完璧であり、モデルのドロップダウンが無効になったり必要になったりしないようにすることができると考えるのが好きですが、完璧ではありません。<select>では、無効で必須の を使用してフォームを送信できますか?

アップデート

w3.org から取得:

制約の検証: 要素が必須であり、その値 IDL 属性が適用され、モード値にあり、要素が mutableであり、要素の値が空の文字列である場合、要素が欠落している可能性があります。

「可変」であるとはどういう意味かを具体的に調べました。

フォーム コントロールは変更可能として指定できます。

注: これは、(要素がそのように指定されているかどうかに依存するこの仕様の定義と要件によって) ユーザーがフォーム コントロールの値またはチェック状態を変更できるかどうか、またはコントロールを自動的に事前入力できるかどうかを決定します。 .

選択には値がないため、そのオプションによって決定されます。

select 要素には値がありません。オプション要素の選択性が代わりに使用されます。

つまり、<select>要素が無効で必須の場合、フォームは有効であると見なすことができるということですか?

4

1 に答える 1

8

http://www.w3.org/TR/html5/forms.html#enabling-and-disabling-form-controls:-the-disabled-attribute :

制約の検証: 要素が無効になっている場合、制約の検証が禁止されます。

http://www.w3.org/TR/html5/forms.html#barred-from-constraint-validation :

サブミット可能な要素は、条件によって要素が制約の検証を禁止されている場合を除き、制約の検証の候補となります

最後に、制約の検証手順のリストhttp://www.w3.org/TR/html5/forms.html#constraint-validation から:

3.1: フィールドが制約検証の候補でない場合は、次の要素に進みます。


つまり、無効化された要素は、フォームの有効性がチェックされるときに「渡される」だけです。

エラーは発生せず、フォームが属するフォームの検証状態にはまったく影響しません。

于 2015-05-29T15:16:18.680 に答える