通过javascript将文件从html表单发送到php
我已经用javascript创建了一个表单。我不想有一个提交按钮,因为它只是一个输入字段。为了使其不受影响,我只使用了onchange函数。所以我的表单如下所示通过javascript将文件从html表单发送到php,javascript,php,jquery,html,forms,Javascript,Php,Jquery,Html,Forms,我已经用javascript创建了一个表单。我不想有一个提交按钮,因为它只是一个输入字段。为了使其不受影响,我只使用了onchange函数。所以我的表单如下所示 <form method="post" name="uploadImage"> <input type="file" id="uploadImg" name="uploadImg" onchange="fileClick()" /> </form> 然后我使用js提交函数来完成表单提交。因此,我
<form method="post" name="uploadImage">
<input type="file" id="uploadImg" name="uploadImg" onchange="fileClick()" />
</form>
然后我使用js提交函数来完成表单提交。因此,我的Javascript如下所示
function fileClick(){
document.forms["uploadImage"].submit();
$.post(
"uploadImage.php",
{image : $("#uploadImg").val()},
function(data, status){
alert(data);
$("#uploadedImgs").innerHTML = "<img src='" + data + "' alt='uploadedImg' />";
});
}
</script>
函数文件单击(){
document.forms[“uploadImage”].submit();
美元邮政(
“uploadImage.php”,
{image:$(“#uploadImg”).val()},
功能(数据、状态){
警报(数据);
$(“#uploadedImgs”).innerHTML=“”;
});
}
(是的,我正确地包括了JQuery)
但是,当我尝试使用这个函数将数据提交到php文件时,我不断得到它说$\u FILES['image']为空。下面是我的php代码
<?php
if($_FILES['image']){
echo "Image set";
} else {
echo "No image selected";
}
?>
非常感谢您的帮助。另外,如果你有一个更简单的方法来做我想做的事情,所有的建议都会被接受。谢谢大家的帮助D
(发帖后的最后一句话)是的,我知道也有类似的问题,但大多数问题都比我使用Javascript时要高级得多。这是因为它是非常简单的,因为它是非常困难和费时的我,以找出如何让它工作。所以请不要标记为重复,因为我无法理解其他人的答案。抱歉:(我使用ajax处理类似的事情。此代码在文件选择器值更改时触发。它发布图像值,并提醒响应
$("#uploadImage").change(function(event) {
var values = $(this).serialize();
$.ajax({
url: "uploadImage.php",
type: "post",
data: values,
success: function(response){
alert(response);
},
error:function(){
//Error
}
});
});
@Companjo我想说这是一个非常类似的问题。但我的javascript不是很高级,所以我尽量让它简单。另外,在查看了他的代码后,我无法理解它,否则我会删除这个问题,认为它是重复的。对不起:/我尝试将它插入到我的代码中,但它似乎不起作用。我可能刚刚完成了错。如果你不介意把我加入skype或者其他什么,我可以告诉你这是怎么回事,那就太好了。如果你愿意的话,请回复。