Wicket
でForm
を
備忘録と
<input type="text" ....></input>
、<input type="email" ....></input>
の 食い 違いによる エラー
must be applied to a tag with [type] attribute matching any of [text], not [email]
原因は、<input type="”email”" ...>
にTextField
を add
しているために発生していました。
修正前
// eMail TextField eMail = new RequiredTextField("eMail", Model.of("")); eMail.add(StringValidator.maximumLength(150)); eMail.add(EmailAddressValidator.getInstance()); form.add(eMail);
修正後
// eMail EmailTextField eMail = new EmailTextField("eMail", Model.of("")); eMail.setRequired(true); eMail.add(EmailAddressValidator.getInstance()); eMail.add(StringValidator.maximumLength(150)); form.add(eMail);
上記のChrome
でJavascript
エラーが
Uncaught InvalidStateError: Failed to read the 'selectionStart' property from 'HTMLInputElement': The input element's type ('email') does not support selection.
上記、<input type="”text”" ...>
にして、TextField
を add
する。
修正前
// eMail EmailTextField eMail = new EmailTextField("eMail", Model.of("")); eMail.setRequired(true); eMail.add(EmailAddressValidator.getInstance()); eMail.add(StringValidator.maximumLength(150)); form.add(eMail);
修正
// eMail TextField eMail = new RequiredTextField("eMail", Model.of("")); eMail.add(StringValidator.maximumLength(150)); eMail.add(EmailAddressValidator.getInstance()); form.add(eMail);
Chrome
で
じゃないと、<input type="”email”" ...>
が使えない。ということに。。
以上です。
コメント