[英]Call function after ajax load()
我在ajax load()之后啟動一個函數,但是我親密的函數調用了另一個函數,該函數不起作用。 在load()
之后如何啟動ajaxstuff()
load()
?
function ajaxstuff(data) {
$.ajax({
type: "POST",
url: "do-it.php",
data: {data},
success: function() {
console.log('I got this far'); // this doesn't work / isn't called
}
});
}
function doit() {
$('form').submit(function(e) {
e.preventDefault();
var formData = new FormData(this);
console.log('I got this far'); // this works
ajaxstuff(formData);
}
}
$('.popup-loader').click(function() {
$(this).append('<div class="popup"></div>');
$('.popup').load('popup.php', function() {
doit(); // this works
}
});
ajaxstuff
函數中的語法錯誤。 data: {data},
可能應該是data: data,
另外,當您將FormData對象傳遞給$ .ajax時,還必須指定processData: false
和contentType: false
$.ajax({
type: "POST",
url: "do-it.php",
data: data,
processData: false,
contentType: false,
success: function() {
console.log('I got this far');
}
});
檢查控制台中是否有錯誤,以及在AJAX中添加async
選項。 將其設置為FALSE(“將async設置為false意味着您要調用的語句必須先完成才能調用函數中的下一條語句”):
function ajaxstuff(data) {
$.ajax({
async: false,
type: "POST",
url: "do-it.php",
data: data,
success: function(result) {
console.log(result); //check in your console for errors
}
});
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.