1

サーバーへの ajax 呼び出しがあるとします。

  1 var jSonCall = 
  2  $.ajax({
  3    url: 'http://some_url.com/some_endpoint'
  4  }).success(function(response) {
  5      $(response).appendTo($('.some_div'));
  6  });
  7 return jSonCall;

そしてクロムでは、リンクされたjqueryファイルに「Uncaught SyntaxError: Unexpected identifier」が表示されます。これは、おそらく4行目が原因です。

また、Chrome のネットワーク タブでリクエストからの応答を確認したところ、応答が 18,000 行の html (*編集: +150,000 文字) であることがわかりました。パラメータ 'response' (html の bookoos であるはずの jquery オブジェクト) がこれをどこかで切り捨てており、非常に多くの html しか保持できない可能性はありますか? もしそうなら、誰かがハード制限が何であるかを知っていますか(最大文字数など)?

4

2 に答える 2

0

あなたは余分を持っています}

var jSonCall = 
  $.ajax({
     url: 'http://some_url.com/some_endpoint'
  }).success(function(response) {
      $(response).appendTo($('.some_div'));
  });
  return jSonCall;

編集:試してください:

var jSonCall =
    $.ajax({
        url: 'http://some_url.com/some_endpoint'
    }).success(function(response) {
        $('.some_div').html(response); //don't make jquery parse the html
    });
return jSonCall;

この方法では、最初に応答の html を解析する jQuery について心配する必要はありません ( $(response))。

于 2013-01-16T21:39:17.217 に答える
0

JavaScript VM によって異なりますが、一般にハード リミットはなく、文字列の最大長は使用可能な JSVM ヒープによって定義されます。

于 2013-01-21T06:32:52.643 に答える