我正在使用脚本的HTML版本。我正在尝试阅读下拉列表的动态版本并将其与文件一起提交。手册说onUploadStart应该这样做但是在我的情况下它不起作用。看起来我放入测试它的警报没有被触发:
$(function() {
$('#file_upload').uploadifive({
'auto': false,
'formData': {
'timestamp': '<?php echo $timestamp; ?>',
'token': '<?php echo md5('unique_salt' . $timestamp); ?>',
},
'queueID': 'queue',
'uploadScript': 'contractor-access-login-new.php?ACTION=UPLOAD',
'fileObjName': 'file[]',
'onUploadStart': function(file) {
alert("TEST");
var folder = $('select[name=category] option:selected').val();
var formData = { 'folder': folder };
$('#file_upload').uploadifive("settings", "formData", formData);
}
});
});
还有其他提交动态变量的方法吗?为什么这种方法不起作用?
答案 0 :(得分:3)
执行此程序并且不要偏离:
从jQuery脚本中取消此选项(是的,删除它):
'formData' : {
'timestamp' : '<?php echo $timestamp;?>',
'token' : '<?php echo md5('unique_salt' . $timestamp);?>'
},
编辑uploadifive.php脚本。添加以下三个陈述:
$_POST['timestamp'] = time();
$_POST['token'] = md5('unique_salt' . $_POST['timestamp']);
$additional_form_data = $_POST['additional_form_data'];
返回到您的jQuery脚本,并添加以下选项:
'onUpload' : function(){
$('#file_upload').data('uploadifive').settings.formData = { 'additional_form_data' : $('#additional_form_data').val() }
},
就是这样。
答案 1 :(得分:1)
试
uploadify_obj.data('uploadifive').settings.uploadScript = ""
答案 2 :(得分:1)
您必须完全将formData移出初始化并在上传时调用函数。请参阅this page
上的帖子