Javascript jquery onchange事件不适用于php中的文件上载

Javascript jquery onchange事件不适用于php中的文件上载,javascript,php,jquery,ajax,jquery-ajaxq,Javascript,Php,Jquery,Ajax,Jquery Ajaxq,我使用jqueryajax方法从php上传文件。我通过单击按钮提交表单实现了文件上传,但当输入字段更改时,它不适用于onchange事件。这是我使用的代码 <div id="photo"> <img id="image" src="<?php echo $uploadedfile;?>" width=100% height=100%> </div> <form id="myform" method="post" enctype="multip

我使用jqueryajax方法从php上传文件。我通过单击按钮提交表单实现了文件上传,但当输入字段更改时,它不适用于onchange事件。这是我使用的代码

<div id="photo">
<img id="image" src="<?php echo $uploadedfile;?>" width=100% height=100%>
</div>
<form id="myform" method="post" enctype="multipart/form-data">
<div id="pick">Change Photo
<input type="file" name="files" id="upload">
</div>
<input type="submit" value="send" name="submit">
</form>

“宽度=100%高度=100%>
换照片
使用jquery


$(“表单#我的表单”).submit(函数(事件){
event.preventDefault();
var formData=新formData($(此)[0]);
$.ajax({
url:“main.php”,
键入:“POST”,
数据类型:“JSON”,
数据:formData,
async:false,
cache:false,
contentType:false,
processData:false,
成功:函数(返回数据){
$(“#图像”).attr({
“src”:returndata.uploadedfile
});
}
}); 
返回false;
});
php代码在这里


我只想通过改变而不是点击按钮来实现这一点。有什么想法吗

$("form#myform").submit(function (event) 
为此:

$("form#myform").change(function (event) 

您是否尝试过
$(“#上传”)。关于(“更改”,函数(e){…您的处理程序…})
?也吹毛求疵:
$(此)[0]==此
是的,尝试过更改,但吹毛求疵是什么?@tcooc您使用的是什么浏览器?当您说“我只想通过更改而不是单击来实现此目标”时“您的意思是,当您选择图像时,应该触发函数吗?当我更改输入字段时,应该为触发事件。但在单击按钮时,该事件工作正常,请稍候让我更新php代码查看php的第一个
if
isset($\u POST['submit'])
。这就是它无法工作的原因,您的PHP需要一个submit POST变量。删除IF和它将工作no仍然没有更改,我添加了两个警报,一个在更改事件之后,一个在提交函数之后,但只有第一个在工作,这意味着它没有进入提交函数内部
$("form#myform").submit(function (event) 
$("form#myform").change(function (event)