我一直试图在一个TabContainer内的ContentPane(以编程方式创建)内部放置一个网格,但到目前为止我没有成功。正如你所看到的,我试图通过使用ContentPane的内容属性来设置网格,但它不起作用。这是我的代码,谢谢。把dgrid放在一个TabContainer内的ContentPane内部
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body class = "claro">
<link rel="stylesheet"
href="http://ajax.googleapis.com/ajax/libs/dojo/1.11.2/dijit/themes/claro/claro.css" />
<!-- load Dojo -->
<script>
dojoConfig = {
parseOnLoad : true
}
</script>
<script src="/xampp/dojo/dojo/dojo.js" data-dojo-config="async:true, parseOnLoad:true, locale:'en'"></script>
<div style="width: 350px; height: 290px">
<div id="tc1-prog"></div>
</div>
<script>
require(["dojo/_base/declare", "dijit/layout/TabContainer", "dijit/layout/ContentPane", "dgrid/OnDemandGrid", "dgrid/extensions/DijitRegistry", "dojo/domReady!"], function(declare, TabContainer, ContentPane, Grid, DijitRegistry) {
var tc = new TabContainer({
style : "height: 100%; width: 100%;"
}, "tc1-prog");
var cp1 = new ContentPane({
title : "Food",
content : "We offer amazing food"
});
tc.addChild(cp1);
var cp2 = new ContentPane({
title : "Drinks",
content : "We are known for our drinks."
});
tc.addChild(cp2);
var data = [{
first : 'Bob',
last : 'Barker',
age : 89
}, {
first : 'Vanna',
last : 'White',
age : 55
}, {
first : 'Pat',
last : 'Sajak',
age : 65
}];
var grid = new Grid({
columns : {
first : 'First Name',
last : 'Last Name',
age : 'Age'
}
}, 'grid');
grid.renderArray(data);
grid.startup();
var cp3 = new ContentPane({
title : "Grid",
content : grid
});
tc.addChild(cp3);
tc.startup();
});
</script>
</body>
@Naci我已经添加了一些建议(Memory Store),请参阅我的答案,如果它帮助将其标记为已解决,谢谢您 –