#json #datatable #webix
#json #datatable #webix
Вопрос:
Я использую таблицу данных webix. У меня возникли проблемы с отображением моих значений для таблицы. Данные не отображаются, хотя я знаю, что они видят данные.
Вот мой скрипт webix с моим отображением:
webix.ajax().get('urltourltourl',{
// Error callback
error:function(text, data, XmlHttpRequest){
alert("error");
},
//Success callback
success:function(text, data, XmlHttpRequest){
var data = JSON.parse(text);
console.log(data);
var dtable2 = webix.ui({
container:"datatable",
view:"datatable",
map:{
1:data.data[0].centerNumber,
2:data.data[0].centerNumber
},
columns:[
{ id:"1", header:"CenterNBR" , width:88},
{ id:"2", header:"Loan NBR", width:88},
{ id:"3", header:"Cust Name", width:88},
{ id:"4", header:"MTD #", width:88},
{ id:"5", header:"MTD $", width:88},
{ id:"6", header:"MTD %", width:88},
{ id:"7", header:"YTD #", width:88},
{ id:"8", header:"YTD $", width:88},
{ id:"9", header:"YTD %", width:88},
],
autoheight:true,
autowidth:true,
data: data
});
}
});
Сопоставление должно связать этот идентификатор со значением, которое я извлекаю из объекта data JSON, но это не так. Это просто пустое.
Ответ №1:
Если вы хотите использовать атрибут «map», вам необходимо
- измените ключи на буквенно-цифровую строку (не на числа)
-
запишите отображенные значения в виде строк
map:{ "a1":"#centerNumber#", "a2":"#centerNumber#" }, columns:[ { id:"a1", header:"CenterNBR" , width:88}, { id:"a2", header:"Loan NBR", width:88},
http://webix.com/snippet/115c1e12
Если вам нужны цифровые клавиши, используйте scheme .инициализация вместо
scheme:{
$init:function(obj){
obj[1] = obj.centerNumber;
obj[1] = obj.centerNumber;
}
},