私は、テキスト領域を持つフォームでjquery検証を使用しています。false jquery validationの後に真の検証が続くと、クロムテキスト領域のフォーカスが失われます。
<form id="contact" name="contact" action="/forms/contact_received.php" method="get">
<textarea name="message" cols="60" rows="10" value=""></textarea>
</form>
jqueryのスクリプトは次のようになります:Chromeの場合
$("#contact").validate({
rules: {
name: "required",
email: {required: true, email: true},
subject: "required",
message: {required: true}
},
messages: {
name: "Enter your name",
email: {required: "Please enter a valid email address",minlength: "Please enter a valid email address"},
subject: "it's required",
message: "Please enter your message in the box above"
}
});
、ユーザーはこのテキストエリアながら提出しようとした形でHTMLは、この(罰金含まれていない検証し、他のフィールド)のように見えます空の場合、私のエラーメッセージが表示されます。
ユーザーがテキストエリアにテキストを入力すると、1文字(赤色の「エラー」テキストとして表示され、1文字目の後に黒色に変わります)が書き込まれ、エラーメッセージが表示されなくなります。 textareaは最初の幅に戻ります。ユーザーは、コメントの残りの部分を入力するには、フォームを再度クリックする必要があります。
検証が「true」を返した後で、テキストエリアのフォーカスが維持されるようにするにはどうすればよいですか?
NO偽の後が以下の通りです:カップルの人々は、それが合法的な問題ですので、ここに見られるようにjqueryのフォーラムで同じ問題を抱えていたが、おそらく私はこれを削除する必要があります。 done :-)あなたの前の質問はどうですか?私は返品を偽にするように言った。 – zod
jsにルールを書くのではなく、cssクラス 'required'を使用できますか?それは回避策かもしれません。また、なぜrules.message === '必須'ではないのですか? rules.messageはなぜオブジェクトですか?たぶんそれを文字列に変更すると違いが生じます。 – Teddy
zod最後の質問またはこの質問の意味を理解していません。他のjQueryの例のどれもがそのようなスクリプトにfalseを返すことはありません。それはすべてvalidateプラグインで処理されますか? –