javascript - 将 HTML 文件内容加载到 dojo 对话框中

标签 javascript html dojo

我想将 HTML 文件加载到 dojo 对话框中。这是我的 HTML 文件:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>Demo</title>
    </head>
    <body>
        <canvas width=500 height="240" id="canvas"></canvas>
        <hr>
       <input type="button" id="upload" value="upload" onclick="decodeLocalImage();">
        <ul></ul>
        <script type="text/javascript" src="filereader.js"></script>
        <script type="text/javascript" src="qrcodelib.js"></script>
        <script type="text/javascript" src="webcodecamjs.js"></script>
        <script type="text/javascript">

            var txt = "innerText" in HTMLElement.prototype ? "innerText" : "textContent";
            var arg = {
                resultFunction: function(result) {
                    var aChild = document.createElement('li');
                    aChild[txt] = result.format + ': ' + result.code;
                    document.querySelector('body').appendChild(aChild);
                }
            };
            var decoder = new WebCodeCamJS("canvas").init(arg);


            function decodeLocalImage(){
                decoder.decodeLocalImage();
            }

        </script>
    </body>
</html>

这就是我制作对话框的方式:

             this.scanDialog = new Dialog({
                title: dojoConfig.i18n.productCode,
                style: "width: 900px",
                showTitle:true,
                dimensions:[900,150],
                'class': 'dialogStyle'
            });

所以我的问题是如何将 HTML 文件加载到对话框中?

最佳答案

您可以使用 href 属性加载外部对话框内容,如下所示:

        this.scanDialog = new Dialog({
            title: dojoConfig.i18n.productCode,
            style: "width: 900px",
            showTitle:true,
            dimensions:[900,150],
            'class': 'dialogStyle',
              href: "/url/to/dialog/content/including/layout/dijit/"
        });

检查 official doc

或者试试这个:

       this.scanDialog = new Dialog({
        title: dojoConfig.i18n.productCode,
        style: "width: 900px",
        showTitle:true,
        dimensions:[900,150],
        'class': 'dialogStyle',
          content:`<html>
<head>
    <meta charset="UTF-8">
    <title>Demo</title>
</head>
<body>
    <canvas width=500 height="240" id="canvas"></canvas>
    <hr>
   <input type="button" id="upload" value="upload" onclick="decodeLocalImage();">
    <ul></ul>
    <script type="text/javascript" src="filereader.js"></script>
    <script type="text/javascript" src="qrcodelib.js"></script>
    <script type="text/javascript" src="webcodecamjs.js"></script>
    <script type="text/javascript">

        var txt = "innerText" in HTMLElement.prototype ? "innerText" : "textContent";
        var arg = {
            resultFunction: function(result) {
                var aChild = document.createElement('li');
                aChild[txt] = result.format + ': ' + result.code;
                document.querySelector('body').appendChild(aChild);
            }
        };
        var decoder = new WebCodeCamJS("canvas").init(arg);


        function decodeLocalImage(){
            decoder.decodeLocalImage();
        }

    </script>
 </body>
 </html>` 
       });

关于javascript - 将 HTML 文件内容加载到 dojo 对话框中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52344327/

相关文章:

javascript - 用于 Web 应用程序的 HTML5 Canvas 视口(viewport)

javascript - 小部件加载事件上的 Dojo

javascript - Canvas 位置上的 p5.js 元素

php - 如何在不使用数组的情况下查看选择类型的默认选择

javascript - 使用 Node.js 和 SSH2 从 SFTP 服务器读取文件

HTML5 网络音频 seeTo 用于缓冲源

javascript - 使用类属性的 Dojo 组合框

html - 更改输入表单的值属性及其样式

javascript - Firebase 部署 - "Unable to Authorize"错误

javascript - 如何在模态主体中传递多个数据-id