0

以下のスクリプトを使用して、視覚化をHTMLページに埋め込みました。基本的に、視覚化を表すオブジェクトにプロパティを設定すると、viz_v1.jsがすべての面倒な作業を行います。

  <script type="text/javascript" src="http://public.tableausoftware.com/javascripts/api/viz_v1.js"></script>
  <div class="tableauPlaceholder" 
        style="width:654px; height:1469px;background-image: url('http://localhost:81/Background.gif'); top: 0px; left: 0px; width: 100%; margin-left: 76px;">

            <noscript>
                <a href="#"><img alt="Analytics, Inc. " 
                src="http://localhost:81/Background.gif" 
                style="border: none" /></a>
            </noscript>

            <object class="tableauViz" width="654" height="1469" style="display:none;">
            <param name="host_url" value="http%3A%2F%2F192.168.56.1%2F" />
            <param name="site_root" value="/t/Site2" />
            <param name="name" value="AnalyticsIncJavaScript&#47;AnalyticsInc" />
            <param name="tabs" value="no" />
            <param name="toolbar" value="yes" />
            <param name="static_image" value="Background.gif"/>
            <param name="animate_transition" value="yes" />
            <param name="display_static_image" value="yes" />
            <param name="display_spinner" value="yes" />
            <param name="display_overlay" value="yes" />
            <param name="display_count" value="yes" />
            </object>

    </div>

問題のすべてのプロパティ値をハードコーディングしていることに注意してください。

次に、別のパラメーター/プロパティをミックスに追加する必要があります。この吸盤の値は動的である必要があります。

        <object class="tableauViz" width="654" height="1469" style="display:none;">
        <param name="host_url" value="http%3A%2F%2F192.168.56.1%2F" />
        ... 
        <param name="ticket" value="<a dynamic value>" />           
        </object>

任意のユーザー名とクライアントのIPをURLにPOSTして「チケット」の値を取得し、応答を取得する必要があります。

私が行った調査から、jqueryでこれを実行できるように見えますが、私はjs newbであるため、POST時に2つの名前/値ペア(ユーザー名、IPアドレス)を渡す方法がわかりません。また、応答を解析して結果の「チケット」値を取得し、後で使用するために変数にドロップする方法もわかりません。

質問1:誰かがこれを行う方法を教えてもらえますか?(「愚か者のためにシンプルに保つ」はここでは間違いなく正しいです-私がjqueryとjavascriptについて無知であるという仮定は正しいでしょう)

質問2:チケット値が変数(varTicketと呼びましょう)にロードされたと仮定して、tableauVizオブジェクトにチケットパラメーターを動的に設定するにはどうすればよいですか?

PHPのようなものを使用し(それについても無知です)、どういうわけか私のチケットの値をエコーし​​ますか?tableauVizオブジェクトを直接アドレス指定して、その.ticketプロパティにタッチできますか?含まれているページをリロード/送信せずに、パズルのこの部分を処理したいと思います。

あなたのアイデアをありがとう!

4

1 に答える 1

1

サーバーがチケットを表す Json を返すと仮定します。

jQuery の投稿は次のようになります。

var ticketValueFromServer;

jQuery.post(
  dataType : "JSON",
  data : {"username" : username, "ipaddress" : ipaddress},
  url: myserverlocation,
  success: function(response){
    ticketValueFromServer = response.ticket;
  }
);

オブジェクトを作成するときに、この ticketValue を使用します。

を見ることを忘れないでください

于 2012-04-27T16:07:08.690 に答える