ここにあるjQueryケチャップ検証プラグインを使用しています: https://github.com/mustardamus/ketchup-plugin
その背後にある基本的な考え方は、カスタム検証イベント (またはルール) をフォームのフィールドにバインドし、フィールドでフォーカスが失われた後にそのイベントをトリガーします。検証ルールが true を返す場合、フィールドが検証されたことを意味します。
カスタム検証ルールを追加しました:
jQuery.ketchup.validation('email_unique', _('Email is being used by another user.'), function (form, el, value) {
$j.ajax({
url: Routes.webshop_check_email_uniqueness_path().url,
type: "POST",
data: {email: el.val()},
success: function(data) {
// this should always work
return true;
}
});
});
しかし、これは機能しません。常に false を返します。また、次を使用してjQuery呼び出しを同期させようとしましasync: false
たが、うまくいきませんでした。
ご協力いただきありがとうございます。