0

ブラウザの言語に応じてページの言語ファイルを取得するために、次のコードを記述しました。

$.ajax({
      'async': false,
      'global': false,
      'url': "./languages/"+navigator.language.substring(0,2)+".json",
      'dataType': "json",
      'success': function (testo) {
        $.each( testo, function(originalstring, newstring){
        $('body').html($('body').html().replace(originalstring, newstring));
        });
      }
  });

「ファイルが見つかりません」エラーを管理し、その結果、デフォルト言語のjsonファイル(つまり英語)をロードする簡単な方法はありますか?

4

2 に答える 2

1

ajaxのエラーコールバックを使用する

$.ajax({
  async: false,
  global: false,
  url: "./languages/"+navigator.language+".json",
  dataType: "json",
  success: function (testo) {
    $.each( testo, function(originalstring, newstring){
    $('body').html($('body').html().replace(originalstring, newstring));
    }
  },
 error:function( obj, textStatus, errorThrown){
    //load default lang file here
 }

});

于 2013-03-15T17:29:05.103 に答える
1
        $.ajax({
              'async': false,
              'global': false,
              'url': "./languages/"+navigator.language+".json",
              'dataType': "json",
               complete: function(e, xhr, settings){
                   if(e.status === 404){

                    call the same function by passing the language as english

                   }
                },
              'success': function (testo) {
                $.each( testo, function(originalstring, newstring){
                $('body').html($('body').html().replace(originalstring, newstring));
                });
              }
          });
于 2013-03-15T17:22:25.490 に答える