我在DataTable中附加选定的值选项时遇到问题。
这是我的JavaScript代码
var table = $('#tablesurvey').DataTable( {
"ajax": {
"url": '<?php echo site_url('data'); ?>',
"type": "POST"
},
"columns": [
{"data": "id_vote"},
{"data": "nama"},
{"data": "nik"},
{"data": "desa"},
{"data": "rt"},
{"data": "vote"}
],
"columnDefs": [ {
"targets": -1,
"render": function (data, type, row, meta){
return "<select class='pilihan form-control' id='pilihan'><option value='0'>--Pilihan--</option><option value='1'>1</option><option value='2'>2</option><option value='3'>3</option</select>";
}
} ],
} );
之前的结果
得到我想要的东西
如何为渲染的选择框设置初始选定选项?
答案 0 :(得分:7)
您可以通过编程方式构建<select>
,即逐步添加<option>
并与data.vote
进行比较。或者您可以使用更通用的基于jQuery的解决方案:
render: function (data, type, row, meta){
var $select = $("<select class='pilihan form-control' id='pilihan'><option value='0'>--Pilihan--</option><option value='1'>1</option><option value='2'>2</option><option value='3'>3</option></select>");
$select.find('option[value="'+data.vote+'"]').attr('selected', 'selected');
return $select[0].outerHTML
}