Selectize :动态更改设置
Selectize : Change settings dynamically
我很难找到一种方法来即时更改 selectize 的设置
在我的 js 的上半部分,我像这样启动了我的选择:
var selectize = $('select').selectize({
.... others params...,
.... others params...,
load: function(query, callback) {
$.ajax({
url: "http://sample.com/test1", // Old remote url
type: 'GET',
data : {
search : query
},
dataType : "json",
error: function() {
callback();
},
success: function(results) {
if(results.data == undefined){
callback();
}else{
callback(results.data);
}
}
});
}
})[0].selectize;
有时,我需要更改单击按钮时选择的 url。我尝试了下面的代码。
selectize.clear();
selectize.clearOptions();
selectize.load(function(callback) {
this.settings.url = "http://sample.com/test2"; // New remote url
$.ajax({
url: this.settings.url,
success: function(response) {
callback(response.data);
},
error: function() {
callback();
}
})
});
选项已更新,但 url 仍然相同。当用户在搜索框中键入时,搜索查询使用旧的 URL.
我已经成功找到了解决方案,但是有点乱。
selectize.settings.load = function(query, callback) {
$.ajax({
url: "http://sample.com/test2", // NEW remote url
type: 'GET',
data : {
search : query
},
dataType : "json",
error: function() {
callback();
},
success: function(results) {
if(results.data == undefined){
callback();
}else{
callback(results.data);
}
}
});
}
我希望有人能找到除此之外更好的解决方案。如果selectize的文档中有这个就更好了。
我很难找到一种方法来即时更改 selectize 的设置
在我的 js 的上半部分,我像这样启动了我的选择:
var selectize = $('select').selectize({
.... others params...,
.... others params...,
load: function(query, callback) {
$.ajax({
url: "http://sample.com/test1", // Old remote url
type: 'GET',
data : {
search : query
},
dataType : "json",
error: function() {
callback();
},
success: function(results) {
if(results.data == undefined){
callback();
}else{
callback(results.data);
}
}
});
}
})[0].selectize;
有时,我需要更改单击按钮时选择的 url。我尝试了下面的代码。
selectize.clear();
selectize.clearOptions();
selectize.load(function(callback) {
this.settings.url = "http://sample.com/test2"; // New remote url
$.ajax({
url: this.settings.url,
success: function(response) {
callback(response.data);
},
error: function() {
callback();
}
})
});
选项已更新,但 url 仍然相同。当用户在搜索框中键入时,搜索查询使用旧的 URL.
我已经成功找到了解决方案,但是有点乱。
selectize.settings.load = function(query, callback) {
$.ajax({
url: "http://sample.com/test2", // NEW remote url
type: 'GET',
data : {
search : query
},
dataType : "json",
error: function() {
callback();
},
success: function(results) {
if(results.data == undefined){
callback();
}else{
callback(results.data);
}
}
});
}
我希望有人能找到除此之外更好的解决方案。如果selectize的文档中有这个就更好了。