Select2 là công cụ khá tốt để tùy biến select box, nó hỗ trợ việc tìm kiếm, tagging, lấy dữ liệu từ nguồn khác ...
Để sử dụng Select2, bạn cần chèn file JavaScript và CSS của nó vào trang web của bạn.
<head>
trên trang HTML của bạn. <link href="path/to/select2.min.css" rel="stylesheet" /> <br>
<script src="path/to/select2.min.js"></script>
<link href="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/css/select2.min.css" rel="stylesheet" />
<script src="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/js/select2.min.js"></script>
<script type="text/javascript">
$('select').select2();
</script>
$(document).ready(function() {
$(".js-example-basic-single").select2();
// Thêm các tùy chọn của bạn vào đây.
});
<select class="js-example-basic-single">
<option value="AL">Alabama</option>
...
<option value="WY">Wyoming</option>
</select>
$(".js-example-placeholder-single").select2({
placeholder: "Select a state",
allowClear: true
});
$(".js-example-clear").select2({
allowClear: true
});
var data = [{ id: 0, text: 'enhancement' }, { id: 1, text: 'bug' }, { id: 2, text: 'duplicate' }, { id: 3, text: 'invalid' }, { id: 4, text: 'wontfix' }];
$(".js-example-data-array").select2({
data: data
})
ajax: {
url: "/contacts",
dataType: "json",
delay: 200,
data: function (params) {
return {
search: params.term
};
},
processResults: function (data) {
return {
results: data
};
},
cache: true
}
$(".js-example-disabled").prop("disabled", false);
$(".js-example-basic-hide-search").select2({
minimumResultsForSearch: Infinity
});
var $eventSelect = $(".js-example-events");
$eventSelect.on("select2:open", function (e) { log("select2:open", e); });
$eventSelect.on("select2:close", function (e) { log("select2:close", e); });
$eventSelect.on("select2:select", function (e) { log("select2:select", e); });
$eventSelect.on("select2:unselect", function (e) { log("select2:unselect", e); });
$(".js-example-tags").select2({
tags: true
})
$(".js-example-tokenizer").select2({
tags: true,
tokenSeparators: [',', ' ']
})
$(".js-example-language").select2({
language: "es"
});
$(".js-example-rtl").select2({
dir: "rtl"
});
Kết luận:
Select2 đa di năng phết phải không nào. Còn rất nhiều khả năng mà Select2 có thể làm, bạn có thể tham khảo thêm tại https://select2.github.io/
Unpublished comment
Viết câu trả lời