Jquery - 首次使用后初始化选择框

时间:2012-12-07 14:50:52

标签: javascript jquery ajax jquery-chosen

  1. 页面中加载了隐藏的选择框。
  2. 我点击按钮
  3. 我将元素附加到此选择框,我移动它并使其可见
  4. 我在其上应用插件Chosen
  5. 这是由此功能

    完成的
    function moveHiddenSelect(idOffline, type, idMedia, mediaName){
        var $selToReplace  = $("#"+type+"_"+idOffline);
        var $selOriginal   = $("#originalSelect");
        $selToReplace.replaceWith($selOriginal);
    
        $.getScript('/lib/chosen/chosen.jquery.min.js', function(){
            $selOriginal.chosen(); //load plugin script and apply it on the select box
        });
    
        $selOriginal.css("width", "220px");
        $selOriginal.css("visibility", "visible");
    }
    

    单击按钮一次没问题,但是当我再次点击按钮时(步骤2)没有任何事情发生..

1 个答案:

答案 0 :(得分:2)

所选的()应该被调用一次,仅用于创建。 更新每个下拉列表的值后,您可以使用:$(DropdoenElement).trigger(“liszt:updated”);

function moveHiddenSelect(idOffline, type, idMedia, mediaName){
    var $selToReplace  = $("#"+type+"_"+idOffline);
    var $selOriginal   = $("#originalSelect");
    $selToReplace.replaceWith($selOriginal);

    selOriginal.chosen(); // Init the plugin

    $.getScript('/lib/chosen/chosen.jquery.min.js', function(){
       //load plugin script and apply it on the select box
       selOriginal.trigger("liszt:updated")
    });

    $selOriginal.css("width", "220px");
    $selOriginal.css("visibility", "visible");
}

希望它有所帮助!