1

次のように ajax 呼び出しを行いました。

$('.register a').click(register);

登録機能:

function register(e){
    e.preventDefault();
    var params = $('.register').serialize();
    Api.callApi(
        "/api/authkey/create_user",
        params,
        //success!
        function(response){
            settooltip(response.msg[0])
            // GA
            _gaq.push(['_trackPageview', '/registered']);
            _gaq.push(['_trackEvent', 'register', 'public']);
        },
        //error
        function(response){
            settooltip(response.msg[0])
        }
    );
}

ajax がエラーで応答することがあります。エラーのあるフィールドの隣にこれらの矢印を表示しようとしました (これが settooltipc 関数の機能です)。ただし、API はエラーのあるフィールドの名前のみで応答し、同じ名前のフィールドが複数存在する場合があります。これは、エラー メッセージをどのフィールドに適用すればよいかがわからないことを意味します。

これを解決する方法についての私の考えは、最後に送信されたフォームに ID を設定することです。ただし、登録機能内でこれを行いたいと思います。誰かが実際に.register aをクリックした場合は「this」を使用できますが、Enterを使用すると、「this」には代わりにウィンドウ要素が含まれます。これは良いアプローチですか?その場合、どのフォームが送信されているかをどのように確認できますか?

4

1 に答える 1