我有一张用于上传图片的表单:
<form action="uploadImage.php" method="post" enctype="multipart/form-data" id="UploadForm">
<input type="file" id="fileInput" name="ImageFile" help_token="upload_token" size=20 />
<input type="submit" id="SubmitButton" help_token="upload_token" value="Upload" />
<img id="loadGif" src="images/ajax-loader.gif" alt="load gif" />
</form>
我使用ajaxform准备表单:
var statustxt = $('#statustxt');
var submitbutton = $("#SubmitButton");
var myform = $("#UploadForm");
var galleryStatus2$ = $("#galleryStatus2");
var error_code;
$(myform).ajaxForm({ // called when the code loads
data : {dstDir : g.currentGal}, // pass in some $_POST parameters
resetForm : true,
beforeSend: function() { //before submitting the form
galleryStatus2$.empty(); // clear status from last upload
submitbutton.attr('disabled', ''); // disable upload button
$('img#loadGif').fadeIn(200); // start spinner
},
complete: function(response) { // upload complete
console.log("<br />upload complete. g.currentGal = " + g.currentGal);
galleryStatus2$.html(response.responseText); //upload status
submitbutton.removeAttr('disabled'); //enable submit button again
$('img#loadGif').fadeOut(200); // kill spinner
我遇到的问题是我希望能够告诉动作脚本uploadImage.php,要上传到哪个目录。我试图用“data:{dstDir:g.gurrentGal}”行来做到这一点。 g.currentGal保存双击的最后一个文件夹,即最后打开的文件夹,现在是任何上传的目标。但是ajaxform代码在最初加载代码时运行,而不是在提交表单时运行。所以g.currentGal是JavaScript首次加载时初始化的变量,而不是最后一个文件夹打开的。如何在提交表单时将g.currrentGal的值传递给$ _POST数组中的uploadImage.php?
由于
答案 0 :(得分:0)
您需要删除输入提交,而是放置一个按钮。 在按钮上单击,您将信息存储在隐藏的输入标记内。 然后(使用jquery或其他)您可以提交表单,然后您将获得您在Php页面上设置的参数,以html格式。
编辑: 在提交表单之前,每次打开文件夹时重新启动g.storeFolder。