3

私の入力は次のとおりです。

<input id="AdministratorEmail" type="email" maxlength="255" novalidate="novalidate" name="data[Administrator][email]">

novalidate属性が指定されているのに、ブラウザー (Firefox と Chrome でテスト済み) がメール フィールドを自動検証しようとするのはなぜですか?

どうすればこれを防ぐことができますか?

関連性がある場合は、CakePHPを使用しています。

4

2 に答える 2

5

問題は、novalidate個々の入力で属性を使用していたことですが、これは正しくありません。mataが指摘したように、これは入力の認識された属性ではなく、HTML フォーム タグ自体の属性です。

解決

<form novalidate="novalidate">
    <input type="email" name="email" />
</form>

ご覧のとおり、タイプを に変更する必要はありません。type="text"他のブール属性と同様にnovalidate、複数の方法で追加でき、すべてが受け入れられます。

<form novalidate>  <!-- Also acceptable -->

CakePHP のソリューション

echo $this->Form->create('MyModel', array(
    'novalidate' => true
));
echo $this->Form->input('email');

このマークに感謝します。

于 2013-07-23T13:11:13.173 に答える