1

次のスクリプトがあります

   $('.formfield:not(.NoHighlight, #P_PH_PHONE, #P120_PH_EMAIL) :input').focus(function(e){


            var currentElementonForm = $(this); 
            if(currentElementonForm.is("input[type=submit]")){
                currentElementonForm.parents('form').submit();
            }

    });

現在、ユーザーがタブ (キーボードの TAB ボタン) を送信ボタンに移動すると、ページが送信されます。これを停止したいのですが、ユーザーがタブをクリックせずにボタンをクリックした場合にのみ実行します。うまくいけば、質問が明確になり、詳細を喜んで提供します。e.keyCode == 9 を検出しようとしましたが、「未定義」としてログに記録されます。

4

2 に答える 2

0

この問題に対処する別の方法を見つけなければなりませんでした。TAB キーを使用しても" focus" イベントが返されないという問題がありました。keyCodeそのため、別のソリューションを使用する必要がありました。これは私にとって新しいことであり、同じ問題を抱えている人に役立つことを願っています.

于 2012-08-06T14:20:09.893 に答える
0

enter code here編集: keyCode が機能していないため、この問題に別の方法でアプローチできますか?

$('.formfield input[type=submit]').click( function() {
      $(this).parents('form').submit();
  });

  $('.formfield:not(.NoHighlight, #P_PH_PHONE, #P120_PH_EMAIL) :input').focus(function(e){
            var currentElementonForm = $(this); 
            if(currentElementonForm.is("input[type=submit]")){
                var code = e.keyCode || e.which;
                if (code !== 9) {
                    currentElementonForm.parents('form').submit();
                }

            }

    });
于 2012-08-06T10:51:12.500 に答える