简体   繁体   English

jQuery Select2动态添加带有变量定义“ val”的项目

[英]jQuery Select2 dynamically add items defining “val” with variable

I am using jquery select2 and manually works fine! 我正在使用jquery select2并手动正常工作! However, I want to dynamically add items by using this piece of code that I found in that project's github page : 但是,我想使用在该项目的github页面中找到的这段代码来动态添加项目:

$("#e13").val("CA").trigger("change"); //works!

The above example works fine. 上面的例子很好用。 But when I try to substitute "CA" with an equal variable it does not work: 但是,当我尝试用相等的变量替换“ CA”时,它不起作用:

var california = "CA";
$("#e13").val('"'+california+'"').trigger("change");// does not work

I have also prepared a FIDDLE 我还准备了一块

Thanks to TSmith and fernandosavio suggestion, single value worked. 感谢TSmith和fernandosavio的建议,单一价值取得了成功。 My actual goal though is a variable with multiple values: 我的实际目标是一个具有多个值的变量:

var combo = "FL,CO,AZ";
var array = combo.split(",");
$("#e13").val(['"'+array+'"']).trigger("change"); //does not work
//$("#e13").val(["FL","CO","AZ"]).trigger("change"); //this WORKS!

That is also included in the above fiddle... 这也包括在上面的小提琴中...

Any advice? 有什么建议吗?

您不需要做所有的引号和加号操作:

$("#e13").val(california).trigger("change");

@TSmith is right. @TSmith是正确的。

JS Fiddle your fiddle updated. JS Fiddle您的小提琴已更新。

california is already a string california已经是一个字符串

$("#e13").val(california).trigger("change");

and array is already an array 并且array已经是数组

$("#e13").val(array).trigger("change");

So, no need to put quotes on it. 因此,无需在上面加上引号。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM