回调jQuery帖子的功能

时间:2010-11-22 09:31:06

标签: jquery

我有以下代码:

$('#country-list').change(function() {
    country = $('#country-list').val();

    $('td').fadeOut("slow", function() {
        $.post("/gsm/findtariff/country:"+country+"/",
        function(data){
            $('#incoming').html(data.incoming);
            $('#national').html(data.national);
            $('#callsToUk').html(data.toUk);
            $('#international').html(data.otherInternational);
            $('#sms').html(data.sms);
        }, "json");
        $('td').fadeIn();
    });
});

所以基本上当从我的下拉框(#country-list)中选择一个国家时,它应该淡出我的资费表中的所有tds,用返回的发布数据更改它们的值,然后再将它们淡入。然而,在我的当前代码中,td在它们的值被更改之前逐渐消失。如何在设置完所有数据后才能使fadeIn()函数执行?

由于

2 个答案:

答案 0 :(得分:3)

你的回调函数中应该有$('td').fadeIn();

$('td').fadeOut("slow", function() {
        $.post("/gsm/findtariff/country:"+country+"/",
        function(data){
            $('#incoming').html(data.incoming);
            $('#national').html(data.national);
            $('#callsToUk').html(data.toUk);
            $('#international').html(data.otherInternational);
            $('#sms').html(data.sms);
            $('td').fadeIn();
        }, "json");
    });

答案 1 :(得分:0)

fadeIn调用向上移动一行。