是否可以在不同的时间设置不同的select2参数?

时间:2014-06-13 09:21:00

标签: jquery jquery-select2

从游戏中我可以看到这段代码

$("#Selected3").select2({ minimumInputLength: 3 });
$("#Selected3").select2({ placeholder: "Show a placeholder" });

将显示占位符,但删除minimumInputLength参数值。

有没有人知道如何修改此示例,以便添加占位符而不会丢失最小的.Length值。

任何答案都需要允许语句在单独的文件中,即一个在页面上,另一个在引用的.js文件中。

我知道如果我一次设置所有参数会更容易,例如

$("#Selected3").select2({
        minimumInputLength: 3,
        placeholder: "Show a placeholder"
    });

但我正在一个目前不允许的框架内工作。

编辑:对于任何愿意尝试拍摄但不知道select2的人来说,图书馆来自Select2 on GitHub

1 个答案:

答案 0 :(得分:4)

我不认为可以在不重新初始化select2的情况下调整选项。您可以将选项存储在某个变量中,然后根据需要进行调整,但为了使其生效,需要重新初始化select2控件:

var options = { minimumInputLength: 3 };

// initialize
$("#select3").select2(options);

// change options
options.placeholder="show a placeholder";

// need to reinitialize select2 for options to take effect
$("#select3").select2("destroy").select2(options);

或者看看这个jsfiddle并用它来玩arround:http://jsfiddle.net/JjV9m/2/

您还可以更改select2默认值

$.fn.select2.defaults.placeholder = "New placeholder...";

请注意,您仍然需要重新启动现有的select2实例,并且这将对更改后创建的每个实例生效。