2011-11-10 10 views
1

私のプロジェクトにはjQueryタブが使用されています。jQueryタブのロード404ページ

しかし、私は誤植をして、RailsフレームワークでHTTP 404エラーページを表示すると、Tabはページをロードせず、エラー情報を見ることができません。 (訂正:コードに誤字があると、RailsがHTTP 500を返すように見える)

jQueryに404コードが返されたページをロード/表示する方法はありますか?

私はこれまでのところ持っている:

$('#tabs').tabs({ 
    ajaxOptions: { 
     error: function (xhr, status, err) { 
      // Call success function - but how? 
     } 
    } 
}); 
+0

このようななぜあなたはエラーで成功関数を呼びますか? – Smamatti

+0

私はRailsから返されたエラー情報を見たいと思っています。私は開発中にのみそれが欲しい。私は生産中にそれをオフにします。 –

+0

@PetrCezar下記の私のコメントを参照してください - これを行うにはJSコードは必要ありません。したがって、500エラーと404エラーは問題ではありません。 – brandwaffle

答えて

2

()メソッドの内部でみてください

$.ajax({ 
    statusCode: { 
    404: function() { 
     alert('page not found'); 
    } 
    } 
}); 

ちょうどこのようなajaxOptionsにオブジェクトとしてからstatusCodeを渡し、jQueryのタブのコンテキストでそれを使用する:

$('#tabs').tabs({ 
    ajaxOptions: { 
    statusCode: { 
     404: function() { 
     //your 404 handling code runs here 
     } 
    } 
    } 
}); 
+0

ありがとう、それは大きな前進だ。しかし、私はまだどの行のコードが返されたページをタブにロードするのかを見つけることができません。 –

+0

ああ!それが目的ならば、Chromeの開発ツールを使用してください。開発ツールの[ネットワーク]タブをクリックして、タブをクリックしたときにajaxコールのリクエストを探します。返されるデータは、左側の特定のリクエストをハイライト表示すると表示される[レスポンス]セクションに表示されます。スクリーンショットは次のとおりです。http://grab.by/bdKoプレビューをクリックすると、ページの外観(エラーがあるデフォルトの404ページ)が表示されます。http://grab.by/bdKs – brandwaffle

1

404ページもないエラーイベント成功イベントを発生します。あなたがからstatusCodeのルックスのために、そのページ上でここにhttp://api.jquery.com/jQuery.ajax/

あなたの利点に例をからstatusCodeオブジェクトを使用できるように、成功イベントajaxOptionsオブジェクトは、実際のjQueryのアヤックスと同じオプションを取る

関連する問題