【问题标题】:How to refresh a value based on a drop down selection code igniter如何根据下拉选择代码点火器刷新值
【发布时间】:2019-05-20 07:16:13
【问题描述】:

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

我正在使用 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;

刷新页面正在工作,但值没有改变。它不断回到第一个选择。有什么想法吗?

【问题讨论】:

  • 请添加更多代码。帮助你会更容易。

标签: javascript


【解决方案1】:

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

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;
    }
});

【讨论】:

    【解决方案2】:

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

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

    类似的东西

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

    【讨论】:

    • 您好,感谢您的回答,我已经尝试过此代码。似乎手动更改值。但我想自动更改它。你有什么想法吗?
    • 你的页面刷新了吗?你使用查询字符串吗?如何更新代码?
    猜你喜欢
    • 2014-03-26
    • 2012-05-29
    • 1970-01-01
    • 2012-02-13
    • 1970-01-01
    • 1970-01-01
    • 2012-02-03
    • 1970-01-01
    • 2015-05-19
    相关资源
    最近更新 更多