首页 新闻 会员 周边

急急急!在JS中获取uploadify上传图片的对象

0
悬赏园豆:50 [已解决问题] 解决于 2018-08-13 11:31

如果在类型为file的input标签中,使用input.files就可以获取到上传图片文件的对象。下面是一个一个文件对象的例子

而在uploadify中,怎么用js获取呢

我现在要通过这个文件对象,传参给URL.createObjectURL()方法,从而实现前台(一个JS库)对图片中条形码识别的操作

uploadify有一个uploadSuccess回调函数,其中有个file参数,是返回的文件信息,如下

它和input type=file得到的文件对象不太一样,他不是Blob对象,也不是File对象,因此不能传参给URL.createObjectURL()方法

我如果通过以下代码

new File([file], json.message + '.jpg', { type: 'image/jpeg' });

来转换为File对象的话,返回的结果也是不对的

可以看到上面的File对象的size只有12,明显是错误的。

怎么才能获取到uploadify上传文件的对象呢?

请各位老师指点。

teagueli的主页 teagueli | 初学一级 | 园豆:75
提问于:2018-08-10 21:53
< >
分享
最佳答案
0

为什么不继续在 URL.createObjectURL 中使用 input.files ?uploadify 只是帮你将 input 中的文件上传到服务器,与 URL.createObjectURL 没什么关系

收获园豆:50
dudu | 高人七级 |园豆:31007 | 2018-08-10 22:14

URL.createObjectURL 操作的是 file input ,uploadify 操作的也是 file input ,您现在却想用 URL.createObjectURL 操作 uploadify

dudu | 园豆:31007 (高人七级) | 2018-08-10 22:17

@dudu: 没有input.files啊,请老师指点在哪里能找到呢。uploadify在前台渲染后用的是flash标签

<object id="SWFUpload_0" type="application/x-shockwave-flash" data="../js/swfupload/swfupload.swf?preventswfcaching=1533910845295" width="200" height="22" class="swfupload"> 中间的一大堆我就不贴上来了 </object>

teagueli | 园豆:75 (初学一级) | 2018-08-10 22:27

@寻找薛定谔的猫: 看这篇博文的 uploadify 代码:

<input type="file" name="file_upload" id="file_upload" />
<script>
 $(function(){
      $('#file_upload').uploadify({
          'swf':'uploadify.swf',
         'uploader':'uploadify.php'
           // Put your options here
       });
   });
</script>

uploadify 不是绑定的 file input 吗?

dudu | 园豆:31007 (高人七级) | 2018-08-10 22:44

@dudu: 谢谢老师给我指明了方向,不过渲染出的网页代码里确实没有input=file,很郁闷,可能是封装到JS里了,我再找找

teagueli | 园豆:75 (初学一级) | 2018-08-10 22:58

@寻找薛定谔的猫: 或者服务端在图片上传成功后返回图片地址,前端通过地址显示图片

dudu | 园豆:31007 (高人七级) | 2018-08-10 23:15
其他回答(1)
0

我还是没看懂你要干嘛。。。

blurs | 园豆:660 (小虾三级) | 2018-08-11 14:43
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册