我有以下功能
(inside onchange; console.log works well)
$("#prof_picture").ajaxForm(
{
target: '#preview',
success: function(response){
console.log("called");
}
});
未调用成功函数,因此未收到反馈。反馈以下列方式回应"{message:"success",action:"something",data:Array}"
。有谁可以帮助我吗?非常感谢你
这是表格
<form id="profile_picture_upload" enctype="multipart/form-data" action="profile/uploadProfilePicture.php" method="post" name="prof_picture">
<input id="profpic1" style="display:none;" name="profile_picture" type="file">
<a id="change_profile_picture" class="profile_option" onclick="$('#profpic1').click();">Upload</a>
</form>
答案 0 :(得分:1)
正如昆汀所说,表格没有提交。
将ajax绑定到正确的表单ID而不是表单的名称
$("#profile_picture_upload").ajaxForm(
{
target: '#preview',
success: function(response){
console.log("called");
}
});
并使用此html提交表单
<form id="profile_picture_upload" enctype="multipart/form-data" action="profile/uploadProfilePicture.php" method="post" name="prof_picture">
<input id="profpic1" style="display:none;" name="profile_picture" type="file" onchange="$('#profile_picture_upload').submit();">
<a id="change_profile_picture" class="profile_option" onclick="$('#profpic1').click();">Upload</a>
</form>
虽然如果你这样做会点击进入下一页,所以你可能想要添加return false以防止它离开这个页面。