struts2框架下使用uploadify3.2文件上傳插件

關於ajax文件上傳的js插件有不少,如:uploadify、jquploader、ajaxfileupload......

下面介紹一下如何使用uploadify,我使用的版本是3.2(3.2跟以前的版本2差異較大),下載地址:http://www.uploadify.com/download/
還要下載js插件swfobject,地址:https://code.google.com/p/swfobject/downloads/list

js代碼(具體的用法能夠本身百度一下): javascript

<script type="text/javascript">
        $(document).ready(function()
        {
            $("#uploadify").uploadify({
                'auto': false,  //是否自動上傳
                'multi': false,
                'buttonText':'文件上傳',
                'fileObjName':'video', //與服務器端文件對象名字相同
                'formData': {'userId':'xxxxx'},  //附帶值
                'uploader': 'videoshare/Files_FileUpload'  //就是表單action的值
             });
        });  
    </script>
<input type="file" name="video" id="uploadify" />
<a href="javascript:$('#uploadify').uploadify('upload')">上傳</a>|  
<a href="javascript:$('#uploadify').uploadify('cancel')">取消上傳</a>
private File video;  //與input中的name對應
//不能隨便命名
private String videoFileName;   
private String videoContentType;

PS:若是input中的name=xxx 那麼 文件對象名爲xxx ,文件名爲 xxxFileName ,文件類型爲 xxxContentType html

這裏有一個很重要的問題,這個問題搞了我兩天才搞明白,並且我也發現網上很多人都跟我同樣,被這個問題困擾了好久,就是input的name是不能爲upload的,見下圖:


咱們能夠發現用uploadify上傳文件時,它會上傳一個名爲Upload的參數,類型是字符串,而當咱們的文件對象名也是upload時,那麼就會調用setUpload時就會報錯,緣由是setUpload參數是一個file對象!!!

到這裏應該就沒什麼問題了


java

相關文章
相關標籤/搜索