【发布时间】:2022-12-15 07:53:06
【问题描述】:
我正在尝试在数据表编辑器中集成 selectize,但如果我单击编辑,则会得到一个空值(对于字段“国家/地区”)。 我有一个定义如下的数据表:
var table = $('#example').DataTable({
dom : "Bfrtip",//"Bfrtlip",
ajax : './DataChannelServlet?buster=' + new Date().getTime(),
lengthMenu : [ [ 10, 25, 50, -1 ], [ 10, 25, 50, "All" ] ],
select: {
style: 'multi',
selector: 'td:first-child'
},
order : [ [2, "asc"] ],
columns : [ {
data : null,
defaultContent : '',
className: 'select-checkbox',
orderable: false
},{
data : "Id",
defaultContent : ''
},{
data : "Name",
defaultContent : ''
}, {
data : "DisplayName",
defaultContent : ''
}, {
data : "country",
defaultContent : ''
}] ,
fixedHeader: true,
buttons: buttonArray
});
country 列有不同的值,由';'.
我定义了数据表编辑器如下:
editor = new $.fn.dataTable.Editor({
ajax: "./DataChannelServlet",
table: "#example",
legacyAjax: true,
idSrc: "rowID",
fields: [{
label: "Id",
name: "Id",
type: "readonly"
},
{
label: "Country",
name: "country",
type: "selectize",
options: getCountry(),
opts: {
placeholder: 'Enter a search',
delimiter: ';',
searchField: 'label',
valueField: 'value',
persist: true,
maxItems: null,
create: false
}
},{
label: "Name",
name: "Name",
type: "readonly"
},{
label: "Display Name",
name: "DisplayName",
type: "readonly"
},{
label: "Row ID",
name: "rowID",
}],
});
getCountry() 方法提供了可供选择的国家列表。如果国家列只有一个国家,那么编辑器会在编辑屏幕中显示该值。但是,如果国家/地区列有多个值,例如 UK;Belgium,编辑器会为国家/地区显示空文本框。我怎样才能让编辑器在屏幕上显示国家值,就像它允许我选择多个国家值一样';'?
【问题讨论】:
标签: javascript jquery datatables selectize.js