我正在尝试通过AJAX调用(&PHP)上传图像。我正在使用ajaxform插件来执行此操作,但是,显然,当我提交表单时,“文件”输入值并未传递给php脚本。这是我的HTML和JS:
<form action="upload_file.php" method="post" enctype="multipart/form-data" id="select-image">
<input type="file" name="image" size="30"/> <input type="submit" name="upload" value="Upload" />
</form>
<script>
var options = {
success: showResponse // post-submit callback
};
// bind form using 'ajaxForm'
$('#select-image').ajaxForm(options);
// post-submit callback
function showResponse(responseText, statusText, xhr, $form) {
alert('status: ' + statusText + '\n\nresponseText: \n' + responseText +
'\n\nThe output div should have already been updated with the responseText.');
}
</script>
为了测试upload.php包含:
<?php
if(isset($_POST['upload'])){
var_dump($_FILES);
}
?>
什么时候提交表格,我回来的就是:
Array(
[image]=>
)
难道我做错了什么?我什至可以通过Ajaxform插件上传图像吗?请提出建议。
谢谢。
最佳答案
尝试在var选项中添加'cache:false'。
var options = {
cache : false,
success: showResponse // post-submit callback
};
为我工作。
关于javascript - 通过ajaxform上传文件不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23946820/