清除使用jQuery Select2创建的下拉菜单
清除使用jQuery Select2创建的下拉菜单
我正在尝试使用令人惊叹的Select2库以编程方式清除一个下拉菜单。下拉菜单是通过使用Select2的query
选项进行远程ajax调用动态填充的。
HTML:
Javascript:
var $remote = $('#remote'); $remote.select2({ allowClear: true, minimumInputLength: 2, query: function(options){ $.ajax({ dataType: 'json', url: myURL + options.term, error: function(jqXHR, textStatus, errorThrown){ smoke.alert(textStatus + ":服务器在解析以" + options.term + "开头的参数时返回错误"); }, success: function(data, textStatus, jqXHR){ var results = []; for(var i = 0; i < data.length; ++i){ results.push({id: data[i].id, text: data[i].name}); } options.callback({results: results, more: false}); } }); } });
不幸的是,调用$remove.select2('val', '')
会抛出以下异常:
Uncaught Error: 未定义initSelection(),无法调用val()
我已经尝试设置attr
,设置val
,text
以及Select2特定的data
函数。似乎无法使这个下拉菜单在单选按钮的方式下清除和工作。有人有建议吗?