我正在使用Blueimp上傳的jquery-ui版本,我喜歡如何格式化表格並顯示剛剛上傳的文件。但我想將它用作文件管理器,所以我想預先加載現有文件並顯示,而不是像上傳一樣。我怎樣才能做到這一點?到別人解決這個問題的示例鏈接就足夠了。順便說一句,我上傳了幾種不同的文件類型,而不僅僅是圖像。如何預加載現有文件並將其顯示在blueimp上傳表中?
謝謝!
我正在使用Blueimp上傳的jquery-ui版本,我喜歡如何格式化表格並顯示剛剛上傳的文件。但我想將它用作文件管理器,所以我想預先加載現有文件並顯示,而不是像上傳一樣。我怎樣才能做到這一點?到別人解決這個問題的示例鏈接就足夠了。順便說一句,我上傳了幾種不同的文件類型,而不僅僅是圖像。如何預加載現有文件並將其顯示在blueimp上傳表中?
謝謝!
我也有同樣的問題。它如何運作並不神奇。我建議檢查UploadHandler.php文件。然後你就可以根據你的需要修改這個插件了。
上述第二篇文章中的代碼只是對上傳器腳本的ajax調用(默認情況下,server/php /文件夾中的index.php)。在$ .ajax對象中,默認情況下,調用方法設置爲「get」。
打開UploadHandler.php文件並轉到類方法「initialize(...)」。你會看到如何處理「獲取」的電話。 UploadHandler調用類方法this-> get(。:。)來準備併發送現有文件的列表。如果您使用其他上傳目錄,則需要將參數傳遞給UploadHänder。只需恰克在url屬性$阿賈克斯的物體,像:
$otherDir = trim($_REQUEST['otherDir']);
$otherDir_url = [anyURL] .'/'.$otherDir;//so that the files can be downloaded by clicking on the link
$options = array(
'upload_dir'=> $otherDir,
'upload_url'=> $otherDir_url,
);
$upload_handler = new UploadHandler($options);
在主js文件中找到了代碼......它的工作原理並不明顯。它工作得很好。
// Load existing files:
$.ajax({
url: $('#fileupload').fileupload('option', 'url'),
dataType: 'json',
context: $('#fileupload')[0]
}).done(function (result) {
$(this).fileupload('option', 'done').call(this, null, {result: result});
});
你能解釋你是怎麼做到的嗎?它可以通過一個url變量來完成嗎?像php?foldername = customfolder – VIDesignz 2013-10-16 20:30:35
我完全忘了。 :)我現在用不同的代碼,所以這不是當前的問題。我相信上面的調用做到了,其中ajax url的url實際上是一個落入fileupload的jquery選擇器。 – 2013-10-17 00:40:06
或無:
url: $('#fileupload').fileupload('option', 'url')+'?otherDir='+myDir,
然後創建一個新的UploadHandler對象這樣之前,你應該初始化UploadHandler的選項屬性AJAX調用:
準備含有現有文件的細節陣列,例如:
var files = [
{
"name":"fileName.jpg",
"size":775702,
"type":"image/jpeg",
"url":"http://mydomain.com/files/fileName.jpg",
"deleteUrl":"http://mydomain.com/files/fileName.jpg",
"deleteType":"DELETE"
},
{
"name":"file2.jpg",
"size":68222,
"type":"image/jpeg",
"url":"http://mydomain.com/files/file2.jpg",
"deleteUrl":"http://mydomain.com/files/file2.jpg",
"deleteType":"DELETE"
}
];
呼叫完成回調
var $form = $('#fileupload');
// Init fileuploader if not initialized
// $form.fileupload();
$form.fileupload('option', 'done').call($form, $.Event('done'), {result: {files: files}});
可以添加到文件數組的另一個屬性是'thumbnailUrl',其中包含要顯示的存儲圖像的縮略圖預覽的路徑 – 2014-03-17 14:40:00
不確定這一點,您不希望這些文件在頁面加載時預加載上的文件上傳?這對我來說更有意義。 – 2014-04-15 03:11:08
無視我之前說過的話!這像一個魅力。唯一我不完全理解的是deleteURL ...任何人都可以解釋這一點嗎? – 2014-04-15 03:59:54
如果你們看着這個在.NET是幹嘛呢,發現這(對我來說是在application.js中
對於相當新的版本中,有一個函數
// Load existing files:
$.getJSON($('#fileupload form').prop('action'), function(files) {
files = somethingelse;
var fu = $('#fileupload').data('fileupload');
fu._adjustMaxNumberOfFiles(-files.length);
fu._renderDownload(files)
.appendTo($('#fileupload .files'))
.fadeIn(function() {
// Fix for IE7 and lower:
$(this).show();
});
});
中的application.js 我d內雖然它的.NET,但實際上需要這消失了。
然後根據你想展示的東西設置你的文章或文件或「」。如果你刪除行文件= somethingelse,那麼它會預先加載文件夾中的所有文件。
它可以幫助我,謝謝! – Kostanos 2013-10-04 14:23:02