基于选择选项

时间:2016-01-25 19:47:49

标签: javascript jquery select tableau

我有一个简单的HTML选择框和一个javascript函数。我目前使用带有链接和按钮的功能使用onClick事件触发器。

我想使用选择选项来触发功能。该功能(例如,platform()触发嵌入式仪表板上的过滤器。我希望新功能采用所选值并应用相关功能(例如,平台())过滤嵌入式仪表板。我不想显示已选择的内容。

这只是我的HTML和jS文件的摘录 - 包括所有适当的资源链接,例如jQuery。

我该怎么做?

注意:目前,选择选项中包含的每个值都有类似的功能。我只是提出了一个问题。其他功能仅在名称和与提供的选项选择值对应的值

方面有所不同
<!DOCTYPE html>
<html>
    <body>

        <form>                    
            <h3>Color Detail</h3>
            <br>
            <p>Select the level of detail to depict by color.</p>
            <select id="select_a" name="color">
                <option value="Organization">Organization</option>
                <option value="Parent Organization">Parent Organization</option>
                <option value="Parent Organization">Parent Organization</option>           
                <option value="Market">Market</option>
                <option value="Segment">Segment</option>
                <option value="Program">Program</option>
                <option value="Platform">Platform</option>
            </select>            
        </form>

        <script>
            function platform() {
                mainWorkbook = mainViz.getWorkbook();
                // Set to Detail to Platform (aka Type)
                mainWorkbook.changeParameterValueAsync('Color Detail', 'Platform').then(function () {
                    alertOrConsole("'Color Detail' parameter set to Platform");
                });
            };
        </script>
    </body>
</html>

1 个答案:

答案 0 :(得分:3)

用于更改事件

$("#select_a").on('change', function(){
    var selectedVal = $(this).val();
    switch(selectedVal){
        case 'Parent Organization':
            organization();
        break;
        case 'Market':
            market();
        break;
        case 'Segment':
            segment();
        break;
        case 'Program':
            program();
        break;
        case 'Platform':
            platform();
        break;
    }
});