使用jquery多选插件

时间:2015-07-07 13:22:13

标签: javascript jquery html angularjs multi-select

我正在使用一个jQuery插件,它将正常的选择下拉列表转换为花哨的多选下拉列表。这是插件网址: http://wenzhixin.net.cn/p/multiple-select/

现在,我现在面临的问题是,我使用角度j来绑定下拉值。而且,我使用了角度js指令作为

app.directive('ccMultipleSelect', function () {
    var directive = {
        link: link,
        restrict: 'A'
    };
    return directive;

    function link(scope, element, attrs) {
        element.multipleSelect({ selectAll: false });
    }
});

在我的html视图中,代码如下:

<select data-ng-options="c.key as c.value for c in vm.units" 
    multiple="multiple" data-cc-multiple-select>
</select>

但是,问题在于,当调用指令事件时,即调用multipleSelect插件时,到那时角度js没有完成其绑定,因此花式下拉列表不包含任何元素。我认为一个快速的解决方案是使用setTimeout函数在500ms后调用插件,但这不是一个理想的解决方案。必须有其他一些方法可以让我们观察下拉元素并进一步刷新元素。

1 个答案:

答案 0 :(得分:0)

选项1:您是否尝试过延迟而没有任何延迟。我有其他类似的问题:jquery插件没有加载动态数据。

选项2:重绘多重选择$('select')。multipleSelect();