【发布时间】:2013-10-23 07:07:22
【问题描述】:
所以,我有搜索 wtform,其中一个字段用 select2 表示。它通过 ajax 依赖于另一个选择字段加载。加载步骤工作正常。但是,当我提交表单并收到结果数据时,我无法将所选值设置回 select2 字段,因为我只有 id,而且据我所知,initSelection 的回调方法需要 id 和文本。或者,也许我做错了什么。
这里是选择字段
$("#source").select2({
placeholder: "Выберите источник",
initSelection: function(element, callback){
callback({id: element.val(), text:element.val()})
},
query: function(query){
query.callback(source_data)
}
})
我想要下面的东西。 select2 中已经存在这种 id 的数据,唯一的问题是如何选择它。
callback({id: element.val())
【问题讨论】:
-
element.val()应该仍然在回调函数的范围内,所以你应该能够将它作为参数传递,不是吗? -
并删除 () ?回调({id:element.val)
-
element.val() 给了我 id,如果我只在回调方法中使用它,我会得到“未定义”文本作为选定值。
-
试试 $(element).select2('val', element.val());
-
试过了。首先,我不能在没有定义 initSelection 的情况下调用 select2("val", value)。我认为这是因为我正在触发此选择的事件以实现依赖项。即使我删除触发器它也不起作用。
标签: javascript jquery jquery-select2