我有一个双手,我正试图在掌上电脑上显示Json数据。下面是代码。我遇到的问题是,如果添加handsontable的列属性,它将不会在handontable上显示Json数据,但是如果我删除它,它的工作完全正常。
$(document).ready(function () {
objectData = [{ id: "dd1", name: 'bb' }, { id: "dd2", name: 'dd' }];
// objectData = [["aa", "bb"], ["cc", "dd"]];
var $container = $("#example");
$container.handsontable({
data:objectData,
rowHeaders: true,
colHeaders: true,
columns:[ {type: 'text'}, { type: 'text' }],
});
});
我没有收到任何错误消息,但它没有填充JSon数据(objectData)的动手。此外,如果我忽略此部分并尝试在单元格上输入值并获取以便稍后保存到db中,我得到的值是默认值的组合值,即objectData和我在单元格上输入的值。
答案 0 :(得分:0)
如果您指定columns
选项,则必须在type
选项的顶部添加data
选项以及密钥的名称。这就是您应该编写的在数据中使用地图的内容:
$(document).ready(function () {
objectData = [{ id: "dd1", name: 'bb' }, { id: "dd2", name: 'dd' }];
// objectData = [["aa", "bb"], ["cc", "dd"]];
var $container = $("#example");
$container.handsontable({
data:objectData,
rowHeaders: true,
colHeaders: true,
columns:[ {type: 'text', data: 'id'}, { type: 'text', data: 'name' }],
});
});
原因是您要指定要用于哪个列的数据。发生这种情况是因为javascript对象不按顺序排列,否则将无法以正确的顺序显示。