2

クライアント用に簡単なフォームを作成していますが、テキスト フィールドにエラー メッセージを表示したいと考えています。jQueryの検証プラグインでこれを達成することは可能でしょうか?

ありがとう!

4

4 に答える 4

8

引用OP:

「彼らはテキスト フィールドにエラー メッセージを表示したいと考えています。jQuery の Validation プラグインでこれを実現できますか?」

はい。 プラグインのerrorPlacementコールバック関数/オプションを使用することが可能です。

いいえ、私は決してしません。 これにより、ユーザーがフォームを適切に操作することがほぼ不可能になります。このエラーにより、ユーザーが既に入力したデータが消去され、ユーザーはメッセージのテキストを削除してデータを入力する必要があります。これらの問題を克服するための賢い方法を考えられると思いますが、IMO としては、UI の観点からは非常に貧弱なデザインです。クライアントにこのデモを見せてから、下にスクロールして 2 つ目のデモを見せてください。

デモ: http://jsfiddle.net/6fUTV/

$(document).ready(function () {

    $('#myform').validate({ // initialize the plugin
        // rules & options,
        errorPlacement: function(error, element) {
            element.val(error.text());
        }
    });

});

編集placeholder:代わりに、属性を使用できます。メッセージは引き続き入力要素valueにありますが、ユーザーの操作を妨げることはありません。 ただし、このアプローチの大きな欠点はemailminlength、 などのデータ形式を検証するルールがある場合、プレースホルダーの上のフィールド内に値が存在するため、ユーザーに検証メッセージが表示されないことです。 !

errorPlacement: function(error, element) {
    element.attr("placeholder", error.text());
}

デモ 2: http://jsfiddle.net/n5saemj7/


代替案:

メッセージ バブルを使用してエラーを表示する: http://jsfiddle.net/kyK4G/

詳細: jQuery Validate プラグインからのメッセージを Tooltipster ツールチップ内に表示するには?

于 2013-03-01T17:40:56.740 に答える
0

はい、できます。あなたのスキルは非常に粗雑に見えます。

あなたの質問は単純に聞こえるので、単純な道を進みましょう。エラーの場合、メッセージ文字列を値として入力フィールドに割り当てる条件を指定します。

何かのようなもの

var err = "err_msg";

$('#elementId').val(err);

http://api.jquery.com/val/のセクション.val('value')を参照してください。

于 2013-03-01T10:56:29.080 に答える
0

はい、もちろんこれは可能です。テキスト フィールドを検証し、エラーが発生した場合は、エラー メッセージをそのテキスト フィールドまたはプレースホルダーの値として割り当てるだけです。

$("#yourtextfield").val("This field can't be empty.");
于 2013-03-01T10:50:13.473 に答える