简体   繁体   English

dojo xhr get load html不显示dojo对象

[英]dojo xhr get load html does not display dojo objects

I'm using dojo 1.9. 我正在使用dojo 1.9。 using xhr.get to load html file which include dojo objects. 使用xhr.get加载包含dojo对象的html文件。 although the html page display the text, no dojo object was displayed. 尽管html页面显示文本,但没有显示dojo对象。 Coad snipped as follow. Coad如下窃听。

main.js main.js

require(["dojo/_base/xhr", "dojo/dom"], function(xhr,dom){
                var url = require.toUrl("page1.html");
                xhr.get({
                url: url,
                load: function(html){
                    dom.byId("view2").innerHTML = html;

                    var currentView = dijit.registry.byId('view0');
                    currentView.performTransition('#p1view0',1,"slide",null);

                    globalVar = null;
                }
            });
                });

page1.html page1.html

<div data-dojo-type="dojox.mobile.View" id="p1view0" data-dojo-props="selected:true">
    <p>
        This is from Page 1
    </p><br>
    <ul data-dojo-type="dojox.mobile.IconMenu" id="menu2"
        style="width: 274px; height: 210px; margin: 20px;"
        data-dojo-props="cols: 1">
        <li data-dojo-type="dojox.mobile.IconMenuItem"
            data-dojo-props="label: 'Go to Home Page',moveTo:'view0'"></li>
    </ul>
</div>

index.html index.html

<!DOCTYPE HTML>
<html>
-----
<body>
-----
<div data-dojo-type="dojox.mobile.ScrollableView" id="view0" data-dojo-props="selected:true">
</div>
<div id="view2">
</div>
<script src="js/main.js"></script>
</body>
</html>

You have to manually call the dojo parser after inserting the new content. 插入新内容后,您必须手动调用dojo解析器。
See: http://dojotoolkit.org/reference-guide/1.10/dojo/parser.html 请参阅: http : //dojotoolkit.org/reference-guide/1.10/dojo/parser.html

require(["dojo/_base/xhr", "dojo/dom", "dojo/parser"], function(xhr,dom, parser){
            var url = require.toUrl("page1.html");
            xhr.get({
            url: url,
            load: function(html){
                dom.byId("view2").innerHTML = html;

                var currentView = dijit.registry.byId('view0');
                currentView.performTransition('#p1view0',1,"slide",null);

                globalVar = null;

                paerser.parse(dom.byId("view2"));
            }
        });
});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM