次のように 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」には代わりにウィンドウ要素が含まれます。これは良いアプローチですか?その場合、どのフォームが送信されているかをどのように確認できますか?