如何根据下拉选择代码点火器刷新值

时间:2019-05-20 07:16:13

标签: javascript

我正在基于代码点火器中的下拉选择来制作图表,但是在选择下拉列表后刷新值时遇到问题。

我正在使用onchange,但似乎无法正常工作。

<form>
  <select class="form-control btn-primary" id="sel1" onchange="window.setTimeout(function(){ document.location.reload(true); }, this.options[this.selectedIndex].value);">
    <option value = "1">Layanan</option>
    <option value = "2">Hasil</option>
    <option value = "3">Waktu</option>
    <option value = "4">Biaya</option>
  </select>
</form>
var temp = document.getElementById("sel1").value;

刷新页面正在工作,但值未更改。它一直回到第一选择。有什么想法吗?

2 个答案:

答案 0 :(得分:0)

作为一种解决方案(可能不适合您的情况):您需要将参数查询与窗口位置字符串一起传递,但是您应该为窗口加载事件设置事件监听器:

HTML:

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

Javascript:

function reloader(){
var param = document.getElementById('sel1').value;
var ref = window.location.href.split('?')[0];
if (param)
    window.location.href = ref + "?sel1="+param;
}

window.addEventListener('load', function() {
    var query = window.location.href.split('?')[1];
    if (query) {
        var qval = query.split('=')[1];
        document.getElementById('sel1').value = qval;
    } else {
        document.getElementById('sel1').value = 1;
    }
});

答案 1 :(得分:-1)

尝试使用https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Property/selectedIndex

它将帮助您选择所需的选项。

类似这样的东西

document.getElementById("sel1").selectedIndex = 2;