Jquery plugins jqGrid中jQuery UI Multiselect的使用

Jquery plugins jqGrid中jQuery UI Multiselect的使用,jquery-plugins,jqgrid,Jquery Plugins,Jqgrid,我正在尝试使用jQuery插件UI。UI Multiselect的调用通过$(“.Multiselect”).Multiselect()进行 问题是这个调用应该放在jqgrid配置中的什么位置?这应该在OnSeelew内完成吗?目前,我在OnSetrow中有以下调用/定义: function (rowid) { grid.setColProp('available_film_id',{ editoptions:{ dataInit:functio

我正在尝试使用jQuery插件UI。UI Multiselect的调用通过
$(“.Multiselect”).Multiselect()进行
问题是这个调用应该放在jqgrid配置中的什么位置?这应该在OnSeelew内完成吗?目前,我在OnSetrow中有以下调用/定义:

    function (rowid) {
       grid.setColProp('available_film_id',{
       editoptions:{
       dataInit:function (el){$(el).addClass('multiselect')},
       size:5,
       multiple:true,
       dataUrl:'/ajax/selectlist/?q=getSelected&value='+rowid}});
    }
}

我不确定,但我想你可以在这里找到答案


如果需要更多演示,您可以查看您可以在
dataInit
函数中调用
mutlisect

dataInit: function (el) { setTimeout(function () { $(el).multiselect(); }, 50); }
创建元素时将调用该函数

更新


当前版本的Multiselect插件似乎需要元素在DOM中的位置。此事件在将元素插入DOM之前引发,因此需要使用setTimeout函数来完成所需操作。

听起来不错,但在我的设置中不起作用。您是否已经使用过这个插件(UI Multiselect)?@Anatoliy是的,已经使用过很多次。在这种情况下,您需要提供设置的更多详细信息,因为常规代码是正确的。@Anatoliy我已经用DOM插入方面更新了答案。那么这是竞争条件吗?您是否依赖浏览器在50毫秒或更短的时间内将元素放入DOM?@user1334007通常,许多jQuery UI组件取决于DOM中元素的存在。根据浏览器的实现,这通常会影响元素的计算位置。谢谢,但它看起来完全是另一种解决方案。这不是我上面提到的插件。