0

読み込み時に AJAX を使用して (GAE で) Python ハンドラーをトリガーすると、HTML テンプレート ページが正しく読み込まれますが、何らかの理由で、テンプレート ページにある Javascript が実行されません。また、成功のコールバック関数でその JavaScript を返しません。

これは、ロード時にハンドラーをトリガーする index.html ファイルのコードです。

<div id="daily_emails"></div>

<script>
  $.ajax({
     url: "/gviz",
     cache: false,
     success: function(data){
       $("#daily_emails").html(data);
     }
  }); 
</script>

gviz ハンドラーは、カスタムの Google Chart Tools テーブルを含む html テンプレートを生成します。それ自体は問題なく作成されますが、別の html ファイル (上記のように) から呼び出すと、javascript コンテンツが削除され、その結果、プレーンで変更されていない html が返されます。JavaScript コード自体がテンプレート タグ (Google Chart Tool のデータ用) を使用しているため、上記の index.html ファイルから実行することはできません。

それが役に立てば、gviz ハンドラーによってレンダリングされているテンプレートの完全なコードを投稿できます。

4

2 に答える 2

1

ページの準備ができたら呼び出しが行われるようにする必要があります

<script>
$(document).ready(function() {
  $.ajax({
     url: "/gviz",
     cache: false,
     success: function(data){
       $("#daily_emails").html(data);
     }
  });
}); 
</script>
于 2012-08-31T14:04:56.527 に答える
0

どのブラウザを使用していますか? ブラウザーは返された HTML を解析し、不正な HTML を削除する場合があります。これは、返された HTML にエラーがある場合に発生する可能性があります。「/gviz」の結果も含めていただけると助かります。

純粋に有効な HTML を含まない可能性のあるテンプレートを返しているように聞こえるため、ブラウザーが解析を試みないように、コンテンツ タイプを「text/plain」に設定して結果を返す必要がある場合があります。

于 2012-08-31T18:26:38.177 に答える