2011-10-21 43 views
1

我正在使用Aquantum jQuery插件將文件上傳到LAMP站點。瞭解回調上下文中ajax事件對象的屬性

工作正常..但我也需要做一個成功的回調,把上傳的文件名和文件的URL 放在一個表單域。

上傳插件是在這裏:

http://aquantum-demo.appspot.com/file-upload

(很乾淨,涼爽的文件上傳小部件,IMO)

這裏的回調代碼: (在文件名部分效果很好。 。但我該如何抓取文件的URL?)

jQuery('#fileupload').bind('fileuploaddone', function (e,data) { 

    jQuery('textarea').val("<p><a href='" + NEED_FILE_URL_HERE + "' target='_blank'>" + data.files[0].name + "</a>"); 

}); 
+0

我看着那個插件和它提供的示例代碼。上傳的文件的URL在JS中永遠不可用 - 這取決於它上傳到的服務器。他們的示例upload.php似乎在JSON返回中放入了一個.url,所以它應該是data.url。如果不是這樣,只需console.write(JSON.stringify(data));看看它的存儲位置。如果這是正確的,讓我知道,我會將它移動到答案,以便您可以標記它正確。 –

回答

0

我聽說過jQuery UpLoad插件的作者。 他的建議,現在的偉大工程,我知道結果 性回調可以看..

這應該提醒的第一個文件的URL(基於假設 您正在使用的例子包):

$('#fileupload').bind('fileuploaddone', function (e, data) { 
    alert(data.result[0].url); }); 

注意與選擇多個文件的支持,但沒有XHR文件上傳(歌劇,火狐3.6) 可能返回多個對象作爲結果陣列的一部分的瀏覽器。