根据下拉选择更新图表

时间:2019-06-13 03:43:32

标签: javascript

我正在制作一些数据的图表。我想根据选定的下拉选项更改图表。

下拉列表中的值似乎有效。但图表未更新。有帮助吗?

<form>
        <select class="form-control btn-primary" id="sel1" onchange="options[selectedIndex].value&&self.location.reload(true)">
            <option value = "1">Layanan</option>
            <option value = "2">Hasil</option>
            <option value = "3">Waktu</option>
            <option value = "4">Biaya</option>
        </select>
    </form>
onunload = function(){
            var sel1 = document.getElementById('sel1');
            self.name = 'sel1idx' + sel1.selectedIndex;
        }

        onload = function(){
            var idx, sel1 = document.getElementById('sel1');
            sel1.selectedIndex = (idx = self.name.split('sel1idx')) ? idx[1] : 0;
        }

var temp = document.getElementById('sel1');

        if(temp == 1){
            var i = 0;
            var txt = "Layanan";
        }else if(temp == 2){
            var i = 1;
            var txt = "Hasil";
        }else if(temp == 3){
            var i = 2;
            var txt = "Waktu";
        }else if(temp == 4){
            var i = 3;
            var txt = "Biaya";
        }

我想更改temp变量。

2 个答案:

答案 0 :(得分:0)

如果我的理解是正确的,那么您正在尝试存储选择下拉列表中的值吗?如果是这样,您将需要一个事件处理程序来确定何时输入,然后检查输入是否来自select元素;如果是这样,则可以继续分析所选选项中的值。

但是,由于我看不到您正在谈论的“图表”,并且不清楚要完成的工作,因此我不确定要说些什么。

答案 1 :(得分:0)

您可以按照以下步骤进行操作。

<select class="form-control btn-primary" id="sel1" onchange="onChangeSelect()">
    <option value = "1">Layanan</option>
    <option value = "2">Hasil</option>
    <option value = "3">Waktu</option>
    <option value = "4">Biaya</option>
</select>


onunload = function(){
        var sel1 = document.getElementById('sel1');
        self.name = 'sel1idx' + sel1.selectedIndex;
    }



onload = function(){
        var idx, sel1 = document.getElementById('sel1');
        sel1.selectedIndex = (idx = self.name.split('sel1idx')) ? idx[1] : 0;
    }

var temp;

var onChangeSelect = function(){
   temp = $("#sel1").val();
};

    if(temp == 1){
        var i = 0;
        var txt = "Layanan";
    }else if(temp == 2){
        var i = 1;
        var txt = "Hasil";
    }else if(temp == 3){
        var i = 2;
        var txt = "Waktu";
    }else if(temp == 4){
        var i = 3;
        var txt = "Biaya";
    }

在选择元素中选择的值更改时,将触发onChange。因此,在onChangeSelect()中,将读取temp的新值。