我使用下面的脚本将可视化嵌入到 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/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 来检索“票证”的值,然后获取响应。
从我所做的研究来看,jquery 似乎允许我这样做,但由于我是 js 新手,我不清楚如何在发布时传递两个名称/值对(用户名、ipaddress)。我也不清楚如何通过解析响应来获取生成的“票证”值并将其放入变量中以供以后使用。
问题1:有人可以告诉我如何做到这一点吗?(“为愚蠢而保持简单”在这里肯定是有序的——假设我对 jquery 和 javascript 一无所知是正确的)
问题 2:假设我现在已将票证值加载到变量中(我们称之为 varTicket),如何在我的 tableauViz 对象上动态填充票证参数?
我是否使用 PHP 之类的东西(对此也一无所知),并以某种方式回显我的门票价值?我可以直接寻址 tableauViz 对象并触摸它的 .ticket 属性吗?我宁愿处理这部分难题,而不必重新加载/提交包含页面。
谢谢你的想法!