弹出窗口不适用于选择选项

时间:2015-01-08 03:17:22

标签: javascript jquery twitter-bootstrap drop-down-menu popover

Popover不适合我。我试过onChange和mouseover。使用“mouseover”onChange()函数永远不会被命中。使用“更改”会调用onchange函数,但popover仍然无法正常工作。 我想从另一个函数调用onChange函数。这里我只是给出了参考函数()但实际上是它的内部函数。

<select size="1" name = "selectList" id="selectList">
    <option value="1" data-info="data1">Item 1</option>
    <option value="2" data-info="data2">Item 2</option>
    <option value="3" data-info="data3">Item 3</option>
    <option value="4" data-info="data4">Item 4</option>
</select>

$(function() {
//$("select[name=selectList]").on("change",onChange);
$("select[name=selectList]").on("mouseover",onChange); 
});
function onChange() {
    var $this = $(this);
    var $e = $(this.target);
    $('#selectList').popover('destroy');
    $("#selectList").popover({
        trigger: 'manual',
        placement: 'right',
        content: $this.attr("data-info")
    }).popover('show');
}   

http://jsfiddle.net/xrkxdedg/1/

1 个答案:

答案 0 :(得分:0)

更新您的选择器,使其定位到具有option属性的data-info代码。尝试将$this.attr("data-info")更改为$this.children('option:selected').attr("data-info")

function onChange() {
    var $this = $(this);
    var $e = $(this.target);
    $('#selectList').popover('destroy');
    $("#selectList").popover({
        trigger: 'manual',
        placement: 'right',
        content: $this.children('option:selected').attr("data-info") //this
    }).popover('show');
}

<强> JSFiddle