dojo 1.7 dojox / form / Uploader不显示文件选择器对话框

时间:2012-04-18 19:41:06

标签: javascript dojo

我的最终游戏是将上传器添加到对话框中。那是行不通的,所以我走了一条简单的路线,看看它是否有效。下面是我可以去的简单,遗憾的是,单击按钮时文件选择器不会显示。我在Firefox和Chrome上工作。如果有人愿意看到这个并找到一个混蛋我会很感激。

require(["dojox/form/Uploader",
    "dojo/dom",
    "dojox/form/uploader/plugins/IFrame",
    "dojo/domReady!"
  ],
  function(Uploader, dom) {
    var u = new Uploader({
      name: "myPhoto",
      label: "Upload Your Photo",
      multiple: false,
      uploadOnSelect: true,
      url: "to/the/ethreal"
    });
    dom.byId("myDiv").appendChild(u.domNode);
  });
<html>

<head>
  <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/dojo/1.7.1/dijit/themes/claro/claro.css" media="screen">
  <!-- load dojo and provide config via data attribute -->
  <script src="http://ajax.googleapis.com/ajax/libs/dojo/1.7.1/dojo/dojo.js" data-dojo-config="async: true"></script>
</head>

<body class="claro">
  <div id="myDiv"></div>
</body>

</html>

1 个答案:

答案 0 :(得分:4)

嗯,我认为它最终会成为一种愚蠢的东西,但是小部件需要启动。在那一天被扔掉半天之后,我希望道场的例子不会遗漏这样的关键方面。

操作功能如下:

require(["dojox/form/Uploader",
    "dojo/dom",
    "dojox/form/uploader/plugins/IFrame",
    "dojo/domReady!"
  ],
  function(Uploader, dom) {
    var u = new Uploader({
      name: "myPhoto",
      label: "Upload Your Photo",
      multiple: false,
      uploadOnSelect: true,
      url: "to/the/ethreal"
    }, "myDiv");
    u.startup();
  });
<head>
  <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/dojo/1.7.1/dijit/themes/claro/claro.css" media="screen">
  <!-- load dojo and provide config via data attribute -->
  <script src="http://ajax.googleapis.com/ajax/libs/dojo/1.7.1/dojo/dojo.js" data-dojo-config="async: true"></script>
</head>

<body class="claro">
  <div id="myDiv"></div>
</body>

我确信已经多次说过,信息的最佳位置是Nightly Build的测试。我在FileUpload找到了丢失的金块。