实现Boostrap“data-live-search = true”后,从“select”选项获取值不起作用

时间:2018-01-14 16:29:19

标签: javascript jquery html twitter-bootstrap bootstrap-selectpicker

我正在尝试使用Bootstrap创建一个带有搜索字段的下拉列表。

我设置

data-live-search="true"

启用搜索字段。

一切正常,但我需要通过JS获取输入值,因为我需要使用AJAX调用。在使用数据实时搜索之前,它正在运行,但现在它已不再适用了。我想因为Boostrap改变了我的代码。

这是我的下拉列表

<select name="market" id="market" class="market selectpicker" data-live-search="true">
    <option value="USDT-BTC">USDT-BTC</option>
    <option value="USDT-ETH">USDT-ETH</option>
    <option value="USDT-LTC">USDT-LTC</option>
    <option value="USDT-BCC">USDT-BCC</option>
    <option value="USDT-DASH">USDT-DASH</option>
    <option value="USDT-BTG">USDT-BTG</option>
    <option value="USDT-ETC">USDT-ETC</option>
    <option value="USDT-ZEC">USDT-ZEC</option>
    <option value="USDT-XMR">USDT-XMR</option>
    <option value="BTC-ADA">BTC-ADA</option>
    <option value="BTC-ETH">BTC-ETH</option>
    <option value="BTC-XRP">BTC-XRP</option>
    <option value="BTC-SC">BTC-SC</option>
</select>

这是我的JS代码

$(function() {
    $('.selectpicker').selectpicker();
});

setInterval(function () {
    var url = <?php echo json_encode($url); ?>;
    var valuereq = new XMLHttpRequest();
    var thisMarket = document.getElementById("market"); //select element
    var market = thisMarket.value; //i get the value from the option field
    valuereq.open("GET", url+'?market='+market, true); 
    valuereq.send();
    valuereq.status;
    valuereq.onreadystatechange = function () {
        if (valuereq.readyState == 4 && valuereq.status == 200) {
            var return_data = valuereq.responseText;
            document.getElementById("AJAXMoneta").innerHTML = "Actual value "+market + " :" + return_data;
        }
        else document.getElementById("AJAXMoneta").innerHTML = "Error"; 
    }
}, 1400);

为什么javascript无法再从元素中获取值? 有办法解决吗?

0 个答案:

没有答案