我正在使用带有Ajax的Select2来加载远程数据(建议)。
一切都运作良好,但是有一个问题:当用户只输入空格时(通过按空格键)- Ajax请求将被发送。
我该如何防止这种情况发生?此外,我希望在发送之前修剪术语。
$(".js-data-example-ajax").select2({
placeholder: "Select... ",
minimumInputLength: 3,
ajax: {
url: "/my-site/tags",
dataType: 'json',
data: function (params) {
return {
q: params.term
};
},
processResults: function (data) {
return {
results: data
};
},
cache: true
}
编辑:
我忘记提到我已经尝试过类似以下的操作:
data: function (params) {
if (params.term.trim().length < 2) {
return;
}
return {
q: $.trim(params.term)
};
},
并且 GET(Ajax)请求仍然被发送。
throw
不是一个好的解决方案)。 - Dekel