如何在tableau Javascript API的参数更改事件中获取所选参数的值
我有以下代码,有人能帮我吗如何在tableau Javascript API的参数更改事件中获取所选参数的值,javascript,dom-events,tableau-api,Javascript,Dom Events,Tableau Api,我有以下代码,有人能帮我吗 $(document).ready( function(){ viz = loadReport('<?php echo $url; ?>', 'viz', $(window).height()-$('#viz').offset().top-10, '100%','<?php echo ($login->hide_toolbar==1?true:false); ?>','<?php echo (
$(document).ready(
function(){
viz = loadReport('<?php echo $url; ?>', 'viz', $(window).height()-$('#viz').offset().top-10, '100%','<?php echo ($login->hide_toolbar==1?true:false); ?>','<?php echo ($login->hide_tabs==1?true:false); ?>', function(){
viz.addEventListener(tableau.TableauEventName.TAB_SWITCH, onTabSwitch);
viz.addEventListener(tableau.TableauEventName.PARAMETER_VALUE_CHANGE, onParameterValueChange);
prepareSavedViewState();
});
}
);
function onParameterValueChange(e){
//e.preventDefault();
//alert(e.getEventName());
//alert(e.getParameterName());
//alert(e.getParameterName().getCurrentValue());
//alert(e.getCurrentValue());
//alert(e.Parameter.getCurrentValue());
//alert(Parameter.getCurrentValue());
alert(e.getParameterAsync().getCurrentValue());
}
$(文档)。准备就绪(
函数(){
viz=loadReport(“”,“”,$(窗口).height()-$(“”#viz').offset().top-10,“”,$(100%,“”,”,函数(){
即添加事件列表器(tableau.TableauEventName.TAB_开关,onTabSwitch);
即addEventListener(tableau.TableauEventName.PARAMETER_VALUE_CHANGE,OnParameterValue CHANGE);
PrepareSaveViewState();
});
}
);
函数onParameterValueChange(e){
//e、 预防默认值();
//警报(如getEventName());
//警报(如getParameterName());
//警报(如getParameterName().getCurrentValue());
//警报(如getCurrentValue());
//警报(e.Parameter.getCurrentValue());
//警报(参数.getCurrentValue());
警报(如getParameterAsync().getCurrentValue());
}
我正在尝试获取live server上tableau仪表板所选参数的值,但未获取该值。实际上,参数对象工作正常,但不了解如何获取值。事件连接正确。在
onParameterValueChange
函数中,您需要调用getParameterSync
并使用返回的promise对象来获取实际参数值
请参见此示例:
function onParameterValueChange(e){
e.getParameterAsync().then(function(param){
alert(''+param.getName()
+' of Type '+param.getDataType()
+' has value '+param.getCurrentValue().formattedValue);
});
}