weixin_33691700 2015-03-30 21:03 采纳率: 0%
浏览 33

在ajax load()之后调用函数

I initiate a function after an ajax load(), but the function I intimate calls upon an additional function, which isn't working. How do I initiate ajaxstuff() after 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
    }
});
  • 写回答

2条回答 默认 最新

  • weixin_33736649 2015-03-30 21:06
    关注

    Syntax error in ajaxstuff function. data: {data}, , probably should be data: data,

    Also when you're passing a FormData object to $.ajax, you have to specify processData: false and contentType: false

    $.ajax({
        type: "POST",
        url: "do-it.php",
        data: data,
        processData: false,
        contentType: false,
        success: function() {
            console.log('I got this far'); 
        }
    });
    
    评论

报告相同问题?