我尝试运行一些php代码而不使用表单和Ajax刷新页面。但它只是刷新页面,甚至没有尝试运行ajax函数。应该有一些简单的缺失,因为这个完全相同的代码适用于其他形式,即使在同一页面上(具有不同的名称)
HTML表单:
<form class='ajax_file_remove_form'>
<input type='hidden' name='ind' value='0'>
<input type='hidden' name='type' value='image'>
<input type='submit' class='ajax_file_remove_form_submit' name='remove_file'
value='Remove' style='height: 100%'>
</form>
Javascript文件,在$(document).ready(function () {});
内:
$('.ajax_file_remove_form').off().on("submit", function (e) {
console.log("ATTEMPT AJAX FILE REMOVE");
e.preventDefault();
e.stopImmediatePropagation();
var form = $(this);
var data = new FormData(form[0]);
$.ajax({
url: "../ajax_file_remove.php",
type: "POST",
cache: false,
contentType: false,
processData: false,
data: data,
success: function (data) {
console.log("AJAX FILE REMOVED");
console.log(data); file_preview(data);
}
});
})
控制台刚才说 导航到mySite.com/?ind=0&type=image&remove_file=Remove
而不是ATTEMPT AJAX FILE REMOVE
我尝试制作表单方法=&#39; post&#39;,但它仍然只刷新页面,而ajax函数已经说过&#34; POST&#34;
还尝试了$(&#39; .ajax_file_remove_form_submit&#39;)。off()。on(&#34;点击&#34;,功能(e) 或删除.off()或其他我不确定需要的东西。
谢谢:)
答案 0 :(得分:0)
根据文件 - http://api.jquery.com/off/
.off() Remove an event handler.
.off()
功能错位于
$('.ajax_file_remove_form').off().on("submit", function (e) {
我认为如果这个ajax成功,你应该放置或使用.off函数。
$.ajax({
url: "../ajax_file_remove.php",
type: "POST",
cache: false,
contentType: false,
processData: false,
data: data,
success: function (data) {
console.log("AJAX FILE REMOVED");
console.log(data); file_preview(data);
}
});