【问题标题】:how to use bootstrap 4 popover in html select如何在 html 选择中使用 bootstrap 4 弹出框
【发布时间】:2018-05-23 12:15:53
【问题描述】:

Popover 无法正常工作...它只会让我选择一个选项一次。

这是我的代码

<select name="criteria[]" class="criteria form-control" data-original-title="" title="">
    <option value="=" rel="">=</option>
    <option value=">" rel="">&gt;</option>
    <option value=">=" rel="">&gt;=</option>
    <option value="<" rel="">&lt;</option>
    <option value="<=" rel="">&lt;=</option>
    <option value="!=" rel="">!=</option>
    <option value="like" rel="Use % for wildcards">LIKE</option>
    <option value="not_like" rel="Use % for wildcards">NOT LIKE</option>
    <option value="where_in" rel="Please Input Comma Separated List">IN</option>
</select>

这是我的 JS

$(document).on('change', ".criteria", function(){
    var _this=$(this), rel=_this.find("option:selected").attr("rel");
    if(rel!=''){
        _this.popover('dispose').popover({
            title: 'Instruction',
            content: rel,
            placement: "top",
            delay: { show: 500, hide: 100 }
        });
        return;
    }else{
        _this.popover('dispose');
    }
});

请帮我解决这个问题

【问题讨论】:

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


    【解决方案1】:

    $(document).on('change', ".criteria", function(){
        var _this=$(this), rel=_this.find("option:selected").attr("rel");
        if(rel){
            $(this).popover({
                title: 'Instruction',
                content: rel,
                placement: "top",
                delay: { show: 500, hide: 100 }
            });
        }
    });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
    
    <select name="criteria[]" class="criteria form-control" data-original-title="" title="">
        <option value="=" rel="">=</option>
        <option value=">" rel="">&gt;</option>
        <option value=">=" rel="">&gt;=</option>
        <option value="<" rel="">&lt;</option>
        <option value="<=" rel="">&lt;=</option>
        <option value="!=" rel="">!=</option>
        <option value="like" rel="Use % for wildcards">LIKE</option>
        <option value="not_like" rel="Use % for wildcards">NOT LIKE</option>
        <option value="where_in" rel="Please Input Comma Separated List">IN</option>
    </select>

    【讨论】:

    • 对您的更改进行一些解释后,您的答案会更好。
    • 此外,即使rel 值为空,也会出现弹出框。
    • 我添加了这样的 if(rel!=' ') - 我的问题是,当我选择一个选项时,它会弹出一条消息,但是当我再次单击它时,它只会像我一样快速地下拉列表无法选择任何选项
    • 你正在加载 Bootstrap 3。
    【解决方案2】:

    它在我的测试中可以正常工作,但这里有一些建议和工作演示。

    $(document).on('change', '.criteria', function() {
        var _this = $(this), 
            rel = _this.find("option:selected").attr('rel');
    
        if (rel == '') { // ------------ invert logic for simplicity
            _this.popover('dispose');
        } else {
            _this.popover({ // --------- no need to dispose of the popover if rebuilding it
                title: 'Instruction',
                content: rel,
                placement: "auto",
                delay: { show: 500, hide: 100 }
            });
        }
    });
    <script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/js/bootstrap.bundle.min.js"></script>
    <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css" rel="stylesheet">
    
    <select name="criteria[]" class="criteria form-control" data-original-title="" title="">
        <option value="=" rel="">=</option>
        <option value=">" rel="">&gt;</option>
        <option value=">=" rel="">&gt;=</option>
        <option value="<" rel="">&lt;</option>
        <option value="<=" rel="">&lt;=</option>
        <option value="!=" rel="">!=</option>
        <option value="like" rel="Use % for wildcards">LIKE</option>
        <option value="not_like" rel="Use % for wildcards">NOT LIKE</option>
        <option value="where_in" rel="Please Input Comma Separated List">IN</option>
    </select>

    【讨论】:

    • 它为什么在这里工作,但不在我的页面中......在我的页面中它只让我选择一个选项,然后它不会让我选择任何其他选项
    • 如果我再次尝试选择下拉列表会一直闪烁
    猜你喜欢
    • 2019-11-18
    • 2017-11-13
    • 1970-01-01
    • 2018-11-27
    • 2018-05-22
    • 2020-11-12
    • 2016-02-11
    • 2023-03-07
    • 1970-01-01
    相关资源
    最近更新 更多