0
所以我真的很挣扎让jsGrid和我的Django站点一起运行,特别是使用控制器从ajax请求中加载表中的数据。它不工作,所以我设置了这个非常基本的配置,只是为了看看我的控制器中loadData函数发生了什么。使用下面的配置,在控制台中打印的唯一东西是“In Script”。所以它显然不会在控制器中调用loadData。也许这个简单的“测试”配置也不正确。请问我在这里错过了什么?它必须是愚蠢的东西。jsGrid loadData没有被调用
{% extends 'layouts/layout_1.html' %}
{% block title %}Demos{% endblock %}
{% block content%}
<div id="demos-js-grid"></div>
{% endblock %}
{% block other_js %}
<script>
$(document).ready(function() {
console.log("In Script.")
$("#demos-js-grid").jsGrid({
onDataLoading: function(args) {
console.log("On Data loading.")
},
width: "100%",
height: "100%",
inserting: true,
editing: true,
sorting: true,
autoLoad: true,
controller: {
loadData: function(filter) {
console.log("loadData being called..");
},
insertItem: function(item) {
console.log("insertItem being called..")
},
updateItem: function(item) {
console.log("updateItem being called..")
},
deleteItem: function(item) {
console.log("deleteItem being called..")
}
},
fields: [
{ name: "Client Status", type: "text", width: 50 },
{ name: "Bee Status", type: "text", width: 50 },
{ name: "Store Status", type: "text", width: 50 },
{ name: "Region", type: "text", width: 100 },
{ name: "Chain", type: "text", width: 100 },
{ name: "Store", type: "text", width: 150 },
]
});
})
</script>
{% endblock%}
您是否希望您拥有带该id的页面上的'div'元素,并且'script'块在这个元素之后? – tabalin
您几乎可以肯定需要将整个事件包装在jQuery'$(function(){...})中,以确保它只在DOM准备就绪时运行。 –
那么很可能这是当你初始化网格时没有div的问题。所以最好遵循@ DanielRoseman的建议。 – tabalin