Javascript 可以在select2对象初始化后更改它吗?
我正在使用sonata管理包构建一个管理仪表板。我想将一些数据绑定到增强的选择框 问题是我无法在页面加载后更改select2属性:Javascript 可以在select2对象初始化后更改它吗?,javascript,jquery,symfony,jquery-select2,sonata-admin,Javascript,Jquery,Symfony,Jquery Select2,Sonata Admin,我正在使用sonata管理包构建一个管理仪表板。我想将一些数据绑定到增强的选择框 问题是我无法在页面加载后更改select2属性: $(function(){ $("#select-brand").select2({ placeholder: "Select report type", allowClear: true, data: [{id: 0, text: 'story'},{id: 1, text: 'bug'},{id: 2, text
$(function(){
$("#select-brand").select2({
placeholder: "Select report type",
allowClear: true,
data: [{id: 0, text: 'story'},{id: 1, text: 'bug'},{id: 2, text: 'task'}]
});
}):
这将生成错误:
Uncaught Error: Option 'data' is not allowed for Select2 when attached to a <select> element.
这是否相关
在onload事件中添加以下内容:
$('#selectId').append( $.map(data, function(v, i){ return $('<option>', { val: i, text: v }); }) );
考虑一下这个相关的问题。为了解决今晚遇到的一个问题,我不得不销毁并重新创建select2。我认为此解决方案也适用于您。@Suman Bogati请撤消您的编辑。附加代码是important@SumanBogati是的thanks@GeertWille可能是因为我不知道它和/或它没有记录在一个明显的地方。请随意启发我。请记住,我试图通过ajax加载内容。以上代码仅来自select2文档
$('#selectId').append( $.map(data, function(v, i){ return $('<option>', { val: i, text: v }); }) );