我正在尝试在Select2
来电后向AJAX
下拉菜单提供数据。但是,即使AJAX
调用完美运行并返回预期结果,下拉列表似乎也没有获取任何数据。这是代码。请注意,下拉列表位于名为JQuery UI
的{{1}}模式中,#dialog-create-circle
元素仅在单击按钮Select2
打开模态时创建。我观察到即使我在允许#createCircle
调用完成后有足够时间打开模态,仍然没有将数据加载到AJAX
下拉列表。我非常感谢你的帮助。
Select2
答案 0 :(得分:2)
正如@Lucas Costa所建议的那样,在函数中包装ajax并在需要时调用是一个选项。这样你也可以像其他元素或网址一样传递任何东西:
function fillSelect2(){
$.ajax({
'url': '{{site.uri.public}}/getUserList',
'type': 'GET',
'dataType': 'json',
'data': {},
'success': function(data) {
$("#dropdown").select2({
data: data
});
},
'error': function(data) {
}
});
});
$( "#createCircle" ).click(function() {
$( "#dialog-create-circle").dialog( "open" );
fillSelect2(); /* dialog now open, $('#dropdown') should be good to fill */
});