2

私の最終的なゲームは、アップローダをダイアログに追加することです。それはうまくいかなかったので、簡単な方法でうまくいくかどうかを確認しました. 以下は私ができる限り単純なものですが、悲しいことに、ボタンをクリックしてもファイルピッカーは表示されません。私は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>

4

1 に答える 1

4

うーん、バカバカしいと思ったのですが、Widgetsを起動する必要があります。そのために半日を費やした後、道場の例がそのような重要な側面を省略しないことを望みます。

操作関数は次のようになります。

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で不足しているナゲットを見つけました。

于 2012-04-18T21:01:34.657 に答える