0

私は高低を検索しましたが、解決策はありませんでした。

ユーザーが送信ボタンをクリックしたときのアクションを送信機能で処理し、デフォルトのアクションをオーバーライドする必要があります。 ASP.NET を使用し、localhost でこのコードを実行します)。

/////////////////Submit Function/////////////
 $('#ARBB').submit(function (event) {
     //e.cancelBubble is supported by IE - this will kill the bubbling process.
     event.cancelBubble = true;
     event.returnValue = false;

     //e.stopPropagation works only in Firefox.
     if (event.stopPropagation) {
         event.stopPropagation();
         event.preventDefault();
     }

     // initialize validator for a bunch of input fields
     var inputs = $("#Contact :input").validator();

     // perform validation programmatically
     //inputs.data("validator").checkValidity();

     $('#conf').load("/Confirmation.aspx");

     $.blockUI({ css: {
         border: 'none',
         padding: '15px',
         backgroundColor: '#000',
         '-webkit-border-radius': '10px',
         '-moz-border-radius': '10px',
         opacity: .5,
         color: '#fff'
     }
     });

     setTimeout($.unblockUI, 500);

     $("#accordion").accordion("enable");
     $("#accordion").accordion("option", "active", 3);
     $("#CheckMark3").fadeIn("fast");
     $('html, body').animate({
         scrollTop: $("#Section3").offset().top
     }, 500);

 });
 ///////////////////////////////////////////

編集/更新

load 関数が呼び出されると、IE9 はエラーをスローします。

$('#conf').load("/Confirmation.aspx");

エラーは次のとおりです。

SCRIPT5: アクセスが拒否されました。

jquery-1.6.2.js、6244行目文字2

4

4 に答える 4

2

jQuery ライブラリーは、既にブラウザーの違いに対応しています。すべての異なるブラウザーを処理するために必要なのは、次のとおりです。

event.preventDefault();
于 2012-03-31T18:37:01.250 に答える
1

メソッドの最後に return false を入力してみましたか?

$('#ARBB').submit(function (event) {
     //e.cancelBubble is supported by IE - this will kill the bubbling process.
     event.cancelBubble = true;
     event.returnValue = false;

     //e.stopPropagation works only in Firefox.
     if (event.stopPropagation) {
         event.stopPropagation();
         event.preventDefault();
     }

     // initialize validator for a bunch of input fields
     var inputs = $("#Contact :input").validator();

     // perform validation programmatically
     //inputs.data("validator").checkValidity();

     $('#conf').load("/Confirmation.aspx");

     $.blockUI({ css: {
         border: 'none',
         padding: '15px',
         backgroundColor: '#000',
         '-webkit-border-radius': '10px',
         '-moz-border-radius': '10px',
         opacity: .5,
         color: '#fff'
     }
     });

     setTimeout($.unblockUI, 500);

     $("#accordion").accordion("enable");
     $("#accordion").accordion("option", "active", 3);
     $("#CheckMark3").fadeIn("fast");
     $('html, body').animate({
         scrollTop: $("#Section3").offset().top
     }, 500);
return false;
 });
于 2012-03-31T19:05:44.163 に答える
0

preventDefault()ファイアフォックスとクロームで働いています。このコードを試してください:

if (event.preventDefault) { event.preventDefault(); } else { event.returnValue = false; }

このコードは、ブラウザが使用をサポートしているかどうかをチェックpreventDefaultし、それ以外の場合は 2 番目の部分を実行します。

于 2012-03-31T19:12:48.810 に答える
0

どうやら、読み込み中のページの上部に表示される CSS コード (Confirmation.aspx) に問題があったようです。CSS コードを削除した後、アクセス拒否エラーが発生しなくなりました。

于 2012-04-01T16:28:08.640 に答える