我在javascript中有兩個if語句。我需要第二個if語句才能在第一個if語句執行後運行(我不能將兩個if語句放在一起,因爲第一個if語句有時候會執行,否則第一個語句必須在第二個語句運行之前檢查。 )jQuery等待if語句完成
我該怎麼做?
下面是代碼BTW:
if($('#suggestion-'+change).html() == null)
{
$.ajax({
type: 'post',
dataType: 'html',
url: '/suggestion/ajax-change/',
data: {type: change},
success: function(result,status)
{
$('#profile_suggestion .content_wrapper').prepend(result);
}
});
}
if(active != change)
{
var panelShow = '#suggestion-' + change;
var panelHide = '#suggestion-' + active;
var dirShow = ''; var dirHide = '';
switch(active)
{
case 'compatibility':
dirHide = 'left';
switch(change)
{
case 'mutual':
dirShow = 'right';
break;
}
case 'mutual':
switch(change)
{
case 'compatibility':
dirHide = 'right';
dirShow = 'left';
}
}
$(panelHide).hide("slide", { direction: dirHide }, 1000);
$(panelShow).show("slide", { direction: dirShow }, 1000).removeClass('fader');
$(panelHide).addClass('fader');
active = change;
}
嗨,感謝您的回覆。這兩個if語句彼此獨立,所以它們不能在彼此之內。它只是第二個if語句必須在第一個語句之後運行(有時第一個if語句無論如何都是錯誤的,但仍然需要先檢查!) – user1083320 2012-04-10 01:29:37
您還可以考慮使用complete ..並使用trigger()導致產生適當的事件。 – 2012-04-10 01:42:07