簡體   English   中英

在jQuery BlueImp上傳器中從文件名中刪除空格

[英]Removing whitespace from filename in jQuery BlueImp uploader

我正在使用BlueImp jQuery Fileupload, https://github.com/blueimp/jQuery-File-Upload/

我們在文件中存在一些問題,這些文件包括空格,前導和尾隨。 拖尾是一個問題(我認為),主要是從OSX上傳的文件,因為默認情況下省略文件擴展名,導致上傳的文件看起來像:“ test .jpg”或“ test.jpg”,這隨后會導致問題。

我認為這將是一個相當容易的修復,只需要對data.files中的名稱值進行一些修整...

但是事實並非如此,而且我還沒有在網上找到任何直接相關的內容。 也許我的Google Fu今天太弱了。

我已經嘗試過在https://github.com/blueimp/jQuery-File-Upload/wiki/Options#callback-options中使用回調方法,如下所示:

 $('#fileupload').fileupload({
    submit: function (e, data) { 

    // lotsacode...

    }

    }).bind('fileuploadadd', function (e, data) {

        $.each(data.files, function (index, file) {
                file.name = $.trim(file.name)
            });
        });

但是,這給了我:

未捕獲的TypeError:無法設置僅具有吸氣劑的#的屬性名稱

我也嘗試過修改核心功能_onAdd,_onChange等,但是遇到了同樣的問題。

環顧Stackoverflow尋找解決方案或想法,我發現哪里出錯了,如果您通過PHP使用UploadHandler-class的話,這些解決方案似乎可以工作,但我們無法考慮這一點。 所以我想知道是否有明顯的東西或不那么明顯的東西讓我丟失了?

版本:jQuery File Upload Plugin 5.17.1,jQuery File Upload User Interface Plugin 6.9.5

我不需要向對象添加額外的數據,但是修改默認文件數據。

最好的問候托馬斯

根據他們的文檔,難道您不應該將衛生設施鏈接到processQueue中,而不是將其綁定到回調中嗎?

https://github.com/blueimp/jQuery-File-Upload/wiki/Options#processqueue

我在想,您可能綁定到所選的jQuery元素,而不是文件上傳,或者在您收到回調時已處理文件。

每個循環中的console.log(file)給出什么樣的值?

$.each(data.files, function (index, file) {
                //file.name = $.trim(file.name)
                console.log(file)
     });
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM