1

Google ドライブでホストされている html で jquery と datatables を使用しようとしています。データテーブルのデータは、コンテンツ サービスを使用して Apps Script から取得されます。私はデータテーブルの例から取り組んでいます。ホストされる html は次のとおりです。

        <title>JQUERY  DataTables Page  Hosted in Google Drive </title>
    <html>
    <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />

    <title>JQUERY  DataTables Page  Hosted in Google Drive </title>

    <link rel="stylesheet" type="text/css" href="//ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.4/css/jquery.dataTables.css">
    <script type="text/javascript" charset="utf8" src="//ajax.aspnetcdn.com/ajax/jQuery/jquery-1.8.0.min.js"></script>
    <script type="text/javascript" charset="utf8" src="//ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.4/jquery.dataTables.min.js"></script>
    <script type="text/javascript" charset="utf8">

    $(document).ready( function () {
         $('#demo').html( '<table cellpadding="0" cellspacing="0" border="0" class="display" id="example"></table>' );
       $('#example').dataTable( {
          "bServerSide": false,
          "sAjaxSource": "https://script.google.com/macros/s/AKfycbyFGmeMnn2hlRWe1XHTgcOI4nSyi_HcJOYSg2jfBe8b-5qXPUs2/exec"
        });
     });
    </script>
    </head>
    <body>
    <h1>JQUERY  DataTables Page  Hosted in Google Drive </h1>
    <p>Default dataTable with embedded data</p>
    <p>Includes sorting, paging and filtering by default.</p>
    <p>Entire data table loaded in one hit.</p>
    <div id="demo"></div>

    </body>
    </html>

ready 関数を含むスクリプトは、http://live.datatables.net/テスト ハーネスで正常に動作します。アプリ スクリプトは、匿名であっても誰にでも公開されます。アプリのスクリプト呼び出しを実際のテーブルに置き換えると、作業ページが表示されます。

  1. これを機能させるにはどうすればよいですか (おそらくクロスドメインの問題ですか?)
  2. 差し迫った問題の解決策を考えると...表に表示されるデータがドメインまたはユーザーグループに対してプライベートである状況で認証を処理するにはどうすればよいですか
4

2 に答える 2

0

javascript コンソール ( Chrome ではCtrl+ Shift+ ) を使用して、発生しているエラーを確認してください。Jエラーを検索します。このページを取得します。テーブル内に a が必要であることに注意してください。現在のテーブルの代わりに次を追加します。

<table cellpadding="0" cellspacing="0" border="0" class="display" id="example">
  <thead>
    <tr>
      <th>Column 1</th>
      <th>Column 2</th>
      <th>Column 3</th>
      <th>Column 4</th>
      <th>Column 5</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Row 1</td>
      <td>Row 2</td>
      <td>Row 3</td>
      <td>Row 4</td>
      <td>Row 5</td>
    </tr>
  </tbody>
</table>

アプリ スクリプトで を使用Session.getActiveUser()して、スクリプトを実行しているユーザーを特定し、そこからデータを返すかどうかを決定できます。

于 2013-03-12T13:30:35.300 に答える