我有一个简单的Handsontable,可以显示MySQL表中的一些数据。不幸的是我正在检索太多数据,我需要删除或隐藏添加的列。我在互联网上搜索过,看起来似乎有可能,但我发现的每个例子似乎都不起作用。
results.jsp
<script>
var data = ${jsonProducts};
var ht = new Handsontable(dataTable, {
data: data,
startRows: data.length,
readOnly: true,
maxCols: 7,
colHeaders: true,
colHeaders: ["Id", "Problem", "Solution", "Deadline", "Type", "Status", "Developer"],
});
</script>
我尝试maxCols: 7
,但这不起作用。
这就是我检索数据的方式(不是它与问题相关)
@RequestMapping(value = "/result", method = RequestMethod.GET)
public String defaultView(Model model) {
Iterable<Request> request = requestRepository.findAll();
model.addAttribute("requests", request);
Gson gson = new Gson();
String json = gson.toJson(request);
model.addAttribute("jsonProducts", json);
return "form/result";
}
这就是目前的表格:current state of Handsontable
我想只显示前7列并隐藏最后3列。
非常感谢任何帮助。
答案 0 :(得分:1)
在这种情况下,您需要从原始阵列数据源数组中明确定义要在网格中显示的列。例如:
<script>
var data = ${jsonProducts};
var ht = new Handsontable(dataTable, {
data: data,
startRows: data.length,
readOnly: true,
maxCols: 7,
columns: [{ data: 0, type: 'text' }, { data: 1, type: 'text' }, { data: 2, type: 'text' }, { data: 3, type: 'text' }, { data: 4, type: 'text'}],
colHeaders: true,
colHeaders: ["Id", "Problem", "Solution", "Deadline", "Type", "Status", "Developer"],
});
</script>