2014-11-02 48 views
0

我有以下代码用于JQuery多选复选框下拉菜单。JQuery multiselect复选框下拉事件处理

当用户选中复选框时,我可以捕获事件。但是我想在用户选择复选框并关闭下拉菜单时触发事件?我不想为每个复选框选择插入数据库,而是当用户选择他的复选框并关闭下拉菜单时?还应该能够检索选定的值。由于

<div id="multiCheckbox"> 
    <select name="busiUnit" id="day" multiple="multiple" 
     data-native-menu="false"> 
     <option>Business Unit</option> 
     <option value="1">Finance</option> 
     <option value="2">R&D</option> 
     <option value="3">Sales</option> 
     <option value="4">Inventory</option> 
    </select> 
</div> 

JS代码:

$("#day").change(function() { 
    var str = '', 
     busiArray = array(); 

    $("select#day option:selected").each(function() { 
     str = $(this).text(); 
     busiArray.push(str); 
    }); 
}); 
+0

可能重复的[Jquery的事件用于关闭和打开选择下拉,而不是更换](http://stackoverflow.com/questions/20321553/jquery-events-for-closing-and-opening- select-drop-down-and-on-change) – 2014-11-02 10:37:34

+1

你不会听你的代码中任何复选框的改变事件。实际上,HTML中没有复选框。 – undefined 2014-11-02 10:40:24

+0

@Vohuman他希望在关闭弹出菜单/选择菜单时运行代码,因此在此不需要更改事件:)自定义选择菜单会转换为带有用于多重选择的复选框的弹出框。 – Omar 2014-11-02 10:49:25

回答

1

多选selectmenu被转换成一个弹出。该弹出窗口收到ID为select-listbox动态添加到它。

附加popupafterclose然后运行您的代码。的

$(document).on("popupafterclose", "#day-listbox", function() { 
    /* code */ 
}); 
+0

谢谢奥马尔,它的工作。 – 2014-11-03 14:41:06

+0

@JohnsonTummalapalli不客气:) – Omar 2014-11-03 14:44:29