jQuery 选择 - 更新选择列表而不丢失选择

Psy*_*hoX 4 javascript jquery jquery-plugins

我正在尝试使用 jQuery 插件“选择”

http://harvesthq.github.com/chosen/https://github.com/harvesthq/chosen

在我的项目中。

我想要实现的是基于用户选择的更新列表(ajax调用(tree based structure))

这不是更大的问题,因为我可以使用.chosen().change(function())和删除所有未使用的选择项目,然后 .append 新的。

然后我可以.trigger("liszt:updated")用来更新列表,但不幸的是所有选择都被删除了..

有谁知道如何在不丢失所选数据的情况下更新所选列表的方法?

理论上我可以手动删除所有选择的生成

  • 元素,然后用新元素填充,但是获取 SELECT“值”数据是一个问题。

  • Ans*_*was 6

    如果您保存所选项目,这应该相当简单。例如:

    <select data-placeholder="Choose a country..." style="width:350px;" multiple="true"  class="chosen-select">
    $(".chosen-select").chosen();
    
    Run Code Online (Sandbox Code Playgroud)

    现在,在更新所选项目之前,请确保像这样保存所选项目:

    var chosenSelectedItems = $(".chosen-select").val(); // this gets you the select value data
    // Update the select items
    $('.chosen-select').trigger('liszt:updated');
    $(".chosen-select").val(chosenSelectedItems);
    
    Run Code Online (Sandbox Code Playgroud)

    这应该能够在更改之前重置原始值。