【问题标题】:Having problems putting a dgrid into TitlePane将 dgrid 放入 TitlePane 时遇到问题
【发布时间】:2014-09-10 19:11:43
【问题描述】:

我正在尝试将 dojo dgrid 放入标题窗格中,如下所示:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Tutorial: Hello dgrid!</title>
        <link rel="stylesheet" href="/dojo/dojo/resources/dojo.css">
        <link rel="stylesheet" href="/dojo/dgrid/css/dgrid.css">
        <link rel="stylesheet" href="/dojo/dgrid/css/skins/claro.css">
        <link rel="stylesheet" href="/dojo/dijit/themes/claro/claro.css">
    <!-- this configuration assumes that the dgrid package is located
         on the filesystem as a sibling to the dojo package -->
    <script src="/dojo/dojo/dojo.js">
        data-dojo-config={async: true, parseOnLoad: true}
        </script>
    <script>
        require(["dijit/TitlePane", "dgrid/Grid", "dojo/domReady!"], function(TitlePane,Grid){
    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);
});
    </script>
</head>
<body class="claro">
<div data-dojo-type="dijit/TitlePane" data-dojo-props="title: 'Pane #1'">
    <div id="grid"></div>
</div>
</body>
</html>

我只是没有让 TitlePane 出现。网格显示得很好。有什么想法我在这里做错了吗?

最终我将生成一个带有多个网格的页面,并寻找一种将网格放入容器的好方法......

【问题讨论】:

    标签: dojo dojox.grid.datagrid


    【解决方案1】:

    当我输入“dojo/parser”时,它对我有用:

    <script>
            require(["dijit/TitlePane", "dojo/parser","dgrid/Grid", "dojo/domReady!"],
            function(TitlePane, parser, Grid) {
                parser.parse();
                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);
            });
    </script>
    

    【讨论】:

    • 不,仍然不适合我。你让它在我能看到的地方运行吗?
    • 问题是您的配置选项中的“async:true”,如果您删除它应该可以工作。但是,您可能想要异步加载,所以我没有完美的解决方案……某些延迟对象似乎正在阻止加载。 jsfiddle.net/prsu3k0m/6
    • 谢谢,fiddler 中的 data-dojo-config 部分是怎么做的?我在您的示例中没有看到这一点;所以不能摆弄它......
    • 在'Fiddler Options'下的左侧栏中,您可以更改'Framework
    猜你喜欢
    • 2020-02-17
    • 1970-01-01
    • 2011-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多