如何使用jQuery的post方法

9
$.post('image.php', {
    image:form.image.value  
}


<form id="form" enctype="multipart/form-data">
<input type="file" id="image" name="image"/>

PHP->isset($_FILES['file'])

如何使用$.post()在表单标签内部提交$_FILES
我是否仍需要包含enctype或者需要使用AJAX,如何实现?


抱歉,出于安全原因,这是不可能的。 - picios
1
@picios 现在不再是不可能的了。但是,它仅限于现代浏览器 - Jonathan Lonowski
@Jonathan Lonowski 是的,但如果你是开发人员,你不想做这样的事情。 - picios
我有电子邮件和密码需要检查并返回,嗯...这将是困难的。 - Ben
@BenWong 不要气馁!我们会帮助你的! - user1477388
非常感谢!让我阅读那篇帖子并考虑如何实现这个。 - Ben
2个回答

7
使用jQuery表单插件以AJAX方式提交包含文件的表单。 http://malsup.com/jquery/form/ 在JS中:
$('#form').ajaxSubmit({
 success: function(response) {
  console.log(response);
 } 
});

在PHP中

// after doing upload work etc

header('Content-type: text/json');
echo json_encode(['message' => 'Some message or param whatever']);
die();

完整文档和示例: http://malsup.com/jquery/form/#ajaxSubmit

如果我使用插件,如何从PHP中回传消息? - Ben
1
这被视为正常的AJAX调用 - 我会编辑答案向您展示如何操作。 - Artek Wisniewski
非常感谢!让我试一下。 - Ben

0

只需提交表单!

$('form#form').submit();

关于 AJAX 上传,请参考这个答案


他在谈论关于Ajax的POST请求。 - picios
也许是在修改他的问题后,谢谢你的踩。 - Fabian Horlacher

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接