2012-12-27 51 views
0

我已经使用rich:upload标签实现了文件上传,现在新的要求是让它接受从文件夹拖放文件,然后触发文件上传过程。如何制作富文件:上传接受从文件夹中拖放文件?

我的问题是如何实现这个?无论Html5,jQuery等,只要实现它。

如果它可以集成到richfaces,例如一旦收到拖动事件,我可以触发富人:上传与jQuery等最好的东西。

该项目的web框架是richfaces + jsf。

预先感谢您。

增加: 这里是一个jQuery文件上传demo

+0

试试这个,HTTP://docs.jboss.org/richfaces/latest_4_X/Component_Reference/en-US/html/chap -Component_Reference-Drag_and_drop.html –

+0

我以前看过这个功能,我只是不确定如何将它集成到中,一旦收到拖动事件,我如何触发它?如果可能,那对我来说就是最好的解决方案:) – khuang

回答

1

Here你展示如何使用File API一个例子。

基本上,你必须使用ondrop事件和FileReader对象:

<div id='holder'></div> 
<script> 
    var holder = document.getElementById('holder'); 
    holder.ondrop = function (e) { 
     var file = e.dataTransfer.files[0], 
      reader = new FileReader(); 

     reader.onload = function (event) { 
      // your file info 
      console.log(event.target); 
     }; 

     // do read 
     reader.readAsDataURL(file); 

     return false; 
    }; 
</script> 
+0

我该如何在JSF bean中使用这个文件 –

+0

我不知道JSF,但是一旦你有了这个文件,你可以尝试用'xhr.send(File) – lante

+0

是的,我们可以使用xhr.send(File),并且在JSF bean中需要一个新的具体方法,而对于richfaces,则需要一个新的具体方法,谢谢二,它可能是一个计划B. – khuang