我花了两天时间试着写一些允许我通过AJAX上传文件的东西,现在我真的很接近我真正想做的事情,我可以通过AJAX上传文件,但这个想法的重点是我可以上传文件而不刷新页面,现在它刷新我的页面,我不知道如何解决它... 这是我目前的JS
$('#profilovka').validate({
submitHandler: function (form) {
var aFormData = new FormData();
aFormData.append("subor", $('#subor').get(0).files[0]);
$.ajax({
type: "POST",
url: "upravit.php",
processData: false,
contentType: false,
data: aFormData,
success: function (data) {
$('#nove').load(document.URL + ' #nove');
}
})
}
});
我的表单看起来像这样
<form class="profilovka" role="form" id="profilovka" method="post" enctype="multipart/form-data" >
<tr>
<td><label for="subor">Nahraj profilovku:</label></td>
<td><input type="file" name="subor" id="subor"></td>
<td><button type="submit">Save</button</td>
</tr>
</form>
关闭代码$('#nove')。load(document.URL +'#nove');应该这样做,在它工作的不同ajax方法中,我认为错误是在我的表单方法中,并且我在那里提交按钮所以我试图使它像按钮并给它一个onclik =“method()”我让我的JS看起来像函数方法(){ 您可以看到的当前JS代码}但在这种情况下,脚本不会做任何事情......有什么简单的方法可以做到吗?谢谢你的每一个帮助
答案 0 :(得分:0)
您需要在提交处理程序中添加return false;
,以防止自动提交表单。
答案 1 :(得分:0)
submitHandler回调的第一个参数是事件,您需要执行this:
submitHandler: function (event) {
event.preventDefault()
// And the rest of the code
}