我正在使用jQuery上传插件上传文件。每次上传文件时,表单中都会创建一个隐藏字段,其中包含服务器上上传的文件路径。当我提交表单时,我通过从隐藏字段中获取该文件路径将其存储在数据库中。这对我来说很有效。一个问题是我在上传的onComplete
函数中硬编码表单对象。
$('.FileUpload').uploadify({
'uploader' : '/uploadify/uploadify.swf',
'script' : '/uploadify/uploadify.php',
'cancelImg' : '/uploadify/cancel.png',
'folder' : '/uploads',
'auto' : true,
'queueID' : 'fileQueue',
'removeCompleted':false,
'onComplete' : function(event, ID, fileObj, response, data) {
// It is hard coded here. It may create probelems
// if there are multiple file upload buttons.
// How can I do this with '$(this)' keyword or something
$('.SingleFileUpload').parents('form').append( '<input type="hidden" name="uploaded_file" value="' + response + '">' );
}
});
我怎么能得到只有窗体谁的文件浏览按钮点击在onComplete()
功能。我想你明白我的意思了吧?
谢谢
我认为它应该工作,如果你取代$('.SingleFileUpload')
与$(event.target)
我用下面的方法解决了这个问题:
$(event.target).closest('form').append( '<input type="hidden" name="uploaded_file" value="' + response + '">' );