我正在创建一个jquery select2(基于jQuery的替换选择框)并通过$.post
动态加载选项。
我想添加动态数据。每个选项的属性,但我无法弄清楚如何。
这就是我所拥有的:
$("#pa_billSchedule").select2({
data: myResults
}).select2('val', []);
其中myResults
是标准格式$.post
返回的数据:(id: "", text: "")
答案 0 :(得分:1)
您可以使用$.change()
事件执行此操作。检查此JsFiddle:
<input type="hidden" name="pa_billSchedule" id="pa_billSchedule" />
<script>
$(document).ready(function() {
$("#pa_billSchedule").select2({
// this is for testing purposes. You should use `myResults`
data: [
{id: 1, text: 'first', customData: 'red'},
{id: 2, text: 'second', customData: 'green'},
{id: 3, text: 'third', customData: 'blue'}
]
}).select2('val', [])
.on('change', function() {
// and this is where you get the custom attribute
if ($(this).select2('data').customData == 'red') {
alert('the first option was selected');
// do what you need
}
});
});
</script>