上传前检查图片是否有效--mootools

发布于 2024-12-10 22:05:39 字数 923 浏览 0 评论 0原文

我正在使用 mootools 请求将图像数据推送到服务器以导入图像。我的问题是如何在完成请求之前确定图像路径是否有效?

这就是我现在所拥有的 -

http://jsfiddle.net/sTbFb/1/

function doUpload(){
  var remoteFile = document.id('uploadRemote').get('value');
  var imageRequest = new Request({
      url:'index.php', 
      method: 'post',
      data: 'path='+remoteFile,
      onRequest: function() {
        console.log(remoteFile);
        var myimage = Asset.image(remoteFile,
          {
            //onError: imageRequest.cancel() // <-- this doesn't work either
            onError: this.cancel()
          }
        );
      },
      onSuccess: function(response) {
        alert(response);
      }
    }).send();
}

document.id('submit').addEvent('click', function(){
    doUpload();
});

我尝试使用 Asset.image 来测试路径是否确实是图像 - 如果不是,则取消请求。然而,这并没有成功。

关于我做错了什么的任何提示吗?谢谢!

I'm using mootools request to push image data to a server to import images. My question is how to determine if an image path is valid before completing the request?

Here's what I have now--

http://jsfiddle.net/sTbFb/1/

function doUpload(){
  var remoteFile = document.id('uploadRemote').get('value');
  var imageRequest = new Request({
      url:'index.php', 
      method: 'post',
      data: 'path='+remoteFile,
      onRequest: function() {
        console.log(remoteFile);
        var myimage = Asset.image(remoteFile,
          {
            //onError: imageRequest.cancel() // <-- this doesn't work either
            onError: this.cancel()
          }
        );
      },
      onSuccess: function(response) {
        alert(response);
      }
    }).send();
}

document.id('submit').addEvent('click', function(){
    doUpload();
});

I'm trying to use Asset.image to test if a path is truly an image-- then if it's not, to cancel the request. However, it's not working out.

Any hints on what I'm doing wrong? Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

慕烟庭风 2024-12-17 22:05:39

您无法从 获取所选文件的路径。因此,在上传之前您将无法加载它。您能做的最好的事情就是检查文件扩展名。


编辑:也许问题出在这一行:

onError: this.cancel() 

它应该是:

onError: function () {
    imageRequest.cancel();
}

You can't get the path to the selected file from an <input type="file" />. So, you won't be able to load it before you upload it. The best you can do is to check the file extension.


Edit: Perhaps the problem is with this line:

onError: this.cancel() 

It should be:

onError: function () {
    imageRequest.cancel();
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文