jquery - 在 Bootstrap 多选时调用 $(this)

标签 jquery twitter-bootstrap

我成功地展示了 Bootstrap 多选。我有麻烦了。 当选择关闭时,我希望可以调用$(this)。

请帮助我。

编辑:

for (var akun in data_akun){
    $( '#select_akun'+data_akun[akun]['id'] ).multiselect({
        includeSelectAllOption: true,
        onDropdownHide: function(event) {
            alert( $(this).attr('current-attribute') );
        }
    })
}

最佳答案

基本上是在 onDropdownHide 的情况下我们没有得到element直接引用。因此,为了获得它,我们可以使用以下方法。 Bootstrap multiselect生成自己的 DOM 结构并设置原始 <select> 的样式盒子。出于显示目的生成的任何 DOM 都会插入原始 <select> 周围和旁边盒子。请使用浏览器开发者工具的检查元素功能检查生成的DOM。

$(document).ready(function() {
       $('.example-getting-started').multiselect({
        includeSelectAllOption: true,
        onDropdownHide: function(event) {
            var selectObj = $(event.target).prev("select");
            alert( $(selectObj).attr('current-attribute') );
        }
    });
 });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>

<link rel="stylesheet" href="http://davidstutz.github.io/bootstrap-multiselect/dist/css/bootstrap-multiselect.css" type="text/css">

<script type="text/javascript" src="http://davidstutz.github.io/bootstrap-multiselect/dist/js/bootstrap-multiselect.js"></script>

<select class="example-getting-started" current-attribute='hello'>
    <option value="cheese">Cheese</option>
    <option value="tomatoes">Tomatoes</option>
    <option value="mozarella">Mozzarella</option>
    <option value="mushrooms">Mushrooms</option>
    <option value="pepperoni">Pepperoni</option>
    <option value="onions">Onions</option>
</select>

<select class="example-getting-started" current-attribute='world'>
    <option value="cheese">Cheese</option>
    <option value="tomatoes">Tomatoes</option>
    <option value="mozarella">Mozzarella</option>
    <option value="mushrooms">Mushrooms</option>
    <option value="pepperoni">Pepperoni</option>
    <option value="onions">Onions</option>
</select>

关于jquery - 在 Bootstrap 多选时调用 $(this),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43912807/

相关文章:

javascript - 为什么不能通过 Javascript 中的自调用函数动态创建变量?

html - 如何将一个div放在另一个div中的图像上方?

twitter-bootstrap - 推特 Bootstrap 容器

javascript - Bootstrap 3 事件选项卡在页面加载时不显示

jquery - jquery deferred 中的多个 did() ——它是如何工作的?

javascript - summernote 编辑器未打开(laravel 5.2)

html - 当浏览器的宽度 >= 768px 时,折叠的输入栏更窄

css - Bootstrap 模式顶部的 jQuery UI 对话框

ajax - 从 Javascript 异步调用 Magento 时出现随机错误

javascript - 在显示 jquery/js 之前按列值对表格进行排序