我在select2元素中添加了一个项目数组,第一个项目为空 我需要第一个元素确实具有“value”属性,但它没有。
这是我添加到元素的项目数组:
<meta http-equiv="Content-Security-Policy" content="img-src * 'self' data:; default-src * gap:; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; ">
我使用此代码添加元素:
items = [
{ id: "", text: "Choose element" },
{ id: 1, text: 1st element" },
{ id: 2, text: 2nd element" },
{ id: 3, text: 3rd element" }
]
这会创建此html选择:
$element.html('').select2({
data: items
});
正如您所看到的,第一个元素没有“value”属性,但我需要这样:
<select>
<option>Choose element</option>
<option value="1">1st element</option>
<option value="2">2nd element</option>
<option value="3">3rd element</option>
</select>
更新
这似乎是一个select2错误,在此更正:
https://github.com/select2/select2/commit/16b4840c0e2df0461998e3b464ee0a546173950d
答案 0 :(得分:0)
试试这个:
$element.html('').select2({
placeholderOption: function() {
return undefined; //This is the key
},
data: items
});
演示:https://jsfiddle.net/lotusgodkk/rLmztr2d/1668/
参考:https://github.com/select2/select2/issues/2142#issuecomment-35820185