ȸ¿ø°¡ÀԡžÆÀ̵ð/ºñ¹øã±â
ȨÀ¸·Î


[jQuery ©¸·ÆÁ] Ajax ¸¦ ¼øÂ÷ÀûÀ¸·Î ¿©·¯°³ ºÒ·¯¿À±â
9³â Àü
jQuery ÀÇ Áö¿¬µÈ °´Ã¼´Â ±²ÀåÈ÷ À¯¿ëÇÑ ±â´ÉÀ» Á¦°øÇϴµ¥¿ä. ÀÌ Áß¿¡¼­ °¡´ÉÇÑ ±â´ÉÀÌ ¹Ù·Î ¼øÂ÷ÀûÀ¸·Î Ajax ¸¦ ¿äûÇØ Àû¿ëÇÏ´Â ±â¹ýÀ» °£´ÜÇÏ°Ô ±¸Çö °¡´ÉÇÏ´Ù´Â °ÍÀÔ´Ï´Ù.
¾î¶»°Ô µ¹¾Æ°¡³Ä¸é, ¿¹¸¦ µé¾î, 3°³ÀÇ ÆäÀÌÁö¸¦ Ajax ·Î ºÒ·¯¿É´Ï´Ù. ±×·³ ÀÌ·± È帧À¸·Î °¡°íÀÚ ÇÕ´Ï´Ù.

page1.html È£Ãâ -> È£Ãâ¿Ï·á½Ã Äݹé -> page2.html È£Ãâ -> È£Ãâ¿Ï·á½Ã Äݹé -> page3.html È£Ãâ -> ¸ðµç ÆäÀÌÁö È£Ãâ¿Ï·á Äݹé

Ajax¸¦ 3°³ ÇѲ¨¹ø¿¡ ºÒ·¯¿À°í ¸ðµÎ ºÒ·¯¿ÔÀ» °æ¿ì¿¡ ´ëÇÑ ´ëÀÀºÎÅÍ »ìÆ캸µµ·Ï ÇÏ°Ú½À´Ï´Ù. °£´ÜÇÕ´Ï´Ù.

$.when($.ajax('page1.html'),$.ajax('page2.html'),$.ajax('page3.html')).then(function(){
    alert('3°³ ´ÙºÒ·¯¿Ô¾î¿ä~');
});

when Àº ¸ðµç Áö¿¬µÈ °´Ã¼¸¦ ¹Þ¾Æ³»¾î, ±× Áö¿¬µÈ °´Ã¼ÀÇ resolve À̺¥Æ®¸¦ ¸ðµÎ ¹Þ¾Æ¾ß¸¸ then À̺¥Æ®°¡ Àû¿ëµÇÁÒ.

ÀÌ°É ±×´ë·Î ¼øÂ÷ÀûÀ¸·Î ÇÏ°í½ÍÁö¸¸ ±×°Ç Á¶±Ý ¾î·Æ½À´Ï´Ù.
ÇÏÁö¸¸ ±×·¸´Ù°í Çؼ­ º°µµ·Î ±¸ÇöÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù. jQuery ³»Àå ±â´ÉÀ¸·Îµµ ÃæºÐÈ÷ °­·ÂÇϴϱî¿ä.

¸ÕÀú ±¸Çö °á°ú¸¦ º¸½Ã°Ú½À´Ï´Ù.

var pages = ['page1.html', 'page2.html', 'page3.html']; //ºÒ·¯¿Ã ÆäÀÌÁö ¸ðÀ½
var defer = new $.Deferred(); //»õ·Î¿î ºó Áö¿¬ °´Ã¼¸¦ ÃʱâÈ­
var next = defer; //´ÙÀ½ Áö¿¬ °´Ã¼¸¦ ´ãÀ» º¯¼ö

for(var i=0; i<pages.length; i++){
    next = next.then(function(){ //´ÙÀ½ Áö¿¬ °´Ã¼¿¡ ºÒ·¯¿Ã Ajax È£Ã⠽ǽÃ
        return $.ajax(pages[i]).done(function(text){
            // ¿©±â¿¡ ÆäÀÌÁö¸¦ ¼º°øÀûÀ¸·Î È£ÃâÇßÀ» ¶§ ÄݹéÀ» ±¸ÇöÇÕ´Ï´Ù.
            console.log('ÆäÀÌÁö ³»¿ë : ' + text);
        }); //Ajax °´Ã¼´Â ¸Þ¼Òµå°¡ üÀÎÀ̱⠶§¹®¿¡ ¹Ýµå½Ã º¯¼ö¿¡ ´ã°í º°µµ·Î È£ÃâÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.
    });
}

next.then(function(){
    // ¿©±â¿¡ ¸ðµç ÆäÀÌÁö¸¦ ¼º°øÀûÀ¸·Î È£ÃâÇßÀ» ¶§ ÄݹéÀ» ±¸ÇöÇÕ´Ï´Ù.
    console.log('¸ðµç ÆäÀÌÁö È£Ãâ ¼º°ø');
});

defer.resolve(); //¸í½ÃÀûÀ¸·Î resolve ¸¦ È£ÃâÇÏ¿© Áö¿¬µÈ °´Ã¼¸¦ ¼º°øÀûÀ¸·Î È£ÃâÇÔÀ» ¾Ë¸³´Ï´Ù.

¾î¶§¿ä. ½±ÁÒ?
Áö¿¬µÈ °´Ã¼´Â then È£Ã⠽à »õ·Î¿î Áö¿¬ À̺¥Æ®¸¦ »ý¼ºÇÕ´Ï´Ù. ±×·¡¼­ next ¿¡ ´ÙÀ½¿¡ ±× »õ·Î¿î °´Ã¼¸¦ ´ãÁÒ. ÀÌ·± ½ÄÀ¸·Î ¼øÂ÷ÀûÀ¸·Î ºÒ·¯¿À´Â ¹æ½ÄÀÔ´Ï´Ù.

ÇÁ·Î¹ÌÁî ÆÐÅÏÀÇ À§¾öÀ» ´À³¥ ¼ö ÀÖ´Â °£´ÜÇÑ ¿¹Á¦°¡ µÇ°Ú½À´Ï´Ù.
¹°·Ð Á¦ÀÌÄõ¸®ÀÇ ÇÁ·Î¹ÌÁî¿Í ECMA Ç¥ÁØÀÇ ÇÁ·Î¹ÌÁî´Â Á¶±Ý ´Ù¸¥ ¾ç»óÀ» ¶ç°í ÀÖÁö¸¸, Á¦ÀÌÄõ¸® ¶ÇÇÑ ECMA Ç¥ÁØ¿¡ µû¶ó°¡·Á Çϱ⠶§¹®¿¡ Â÷º°È­µÈ´Ù´Â °ÆÁ¤Àº ¾ÈÇϼŵµ µË´Ï´Ù.


Âü°í Source

var pages = ['page1.html', 'page2.html', 'page3.html']; //ºÒ·¯¿Ã ÆäÀÌÁö ¸ðÀ½
var defer = new $.Deferred(); //»õ·Î¿î ºó Áö¿¬ °´Ã¼¸¦ ÃʱâÈ­
var next = defer; //´ÙÀ½ Áö¿¬ °´Ã¼¸¦ ´ãÀ» º¯¼ö

for(var i=0; i<pages.length; i++){
    next = next.then(function(){ //´ÙÀ½ Áö¿¬ °´Ã¼¿¡ ºÒ·¯¿Ã Ajax È£Ã⠽ǽÃ
        return $.ajax(pages[i]).done(function(text){
            // ¿©±â¿¡ ÆäÀÌÁö¸¦ ¼º°øÀûÀ¸·Î È£ÃâÇßÀ» ¶§ ÄݹéÀ» ±¸ÇöÇÕ´Ï´Ù.
            console.log('ÆäÀÌÁö ³»¿ë : ' + text);
        }); //Ajax °´Ã¼´Â ¸Þ¼Òµå°¡ üÀÎÀ̱⠶§¹®¿¡ ¹Ýµå½Ã º¯¼ö¿¡ ´ã°í º°µµ·Î È£ÃâÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù.
    });
}

next.then(function(){
    // ¿©±â¿¡ ¸ðµç ÆäÀÌÁö¸¦ ¼º°øÀûÀ¸·Î È£ÃâÇßÀ» ¶§ ÄݹéÀ» ±¸ÇöÇÕ´Ï´Ù.
    console.log('¸ðµç ÆäÀÌÁö È£Ãâ ¼º°ø');
});
ÃßõÃßõ : 431 Ãßõ ¸ñ·Ï
¹øÈ£ Á¦¸ñ
2,645
php set time limit ÇÔ¼ö - ŸÀӾƿô ¼³Á¤
2,644
Setting .htaccess to allow PHP to be accessed with .xml extension
2,643
jQuery API: Manipulation, Events, Effects, Internals, Utilities
2,642
´Ù¿î·Îµå Ƚ¼ö Á¦ÇÑ ½ºÅ©¸³Æ®
2,641
ÀÚ¹Ù½ºÅ©¸³Æ® ŸÀÌ¸Ó - setTimeout, setInterval, clearInterval ÇÔ¼ö
2,640
jQuery AJAX ·Î±×ÀÎ ±¸Çö
2,639
PHP ¼¼¼Ç ·Î±×ÀÎ ±¸Çö
2,638
PHP ÄíÅ° ·Î±×ÀÎ ±¸Çö
2,637
jQuery¿¡¼­ json º¯¼ö »ç¿ë(È°¿ë)¹ý
2,636
AJAX ¹Ýº¹Ã³¸® ¹× ¼³¸í ¿¹Á¦
2,635
[Android] Intent È°¿ë ¿¹½Ã
2,634
[php] ¹è¿­À» ÀÓÀÇÀÇ ¼ø¼­·Î ¼¯´Â shuffle ÇÔ¼ö
2,633
jQuery API - ¼Ó¼º(CSS), ÃßÃâ
2,632
DIV ¿µ¿ªÀÇ À§Ä¡ ÁöÁ¤ÇÏ´Â ¹æ¹ý°ú ½ºÅ©·Ñ - Àý´ëÀ§Ä¡(absolute), »ó´ëÀ§Ä¡(relative), °íÁ¤À§Ä¡(fixed)
2,631
urlencode(), base64 encode() ÇÔ¼ö
2,630
PHP·Î IE¹öÀü üũÇÏ´Â ¹æ¹ý(Trident°ª»ç¿ë)
2,629
HTML5 °ü·Ã À¯¿ëÇÑ ·¹ÆÛ(ÂüÁ¶) »çÀÌÆ®
2,628
[HTML5] Video & Audio
2,627
HTML5 ¿Àµð¿À °î ¸ñ·Ï Àç»ý
2,626
HTML5 ¿Àµð¿À 404 ¿À·ù½Ã ´Ù¸¥ ÆÄÀÏ Àç»ý
2,625
HTML5 ¿Àµð¿À À̺¥Æ®¸®½º³Ê onerror
2,624
JavaScript Audio °´Ã¼
2,623
HTML5 Audio 2ä³Î Àç»ý
2,622
HTML5 Audio 2ä³Î Àç»ý + Àç»ý¿Ï·á ¸®½º³Ê
2,621
HTML5 À½¾Ç º¼·ý Á¶Àý
2,620
HTML5 À½¾Ç º¼·ý Á¶Àý
2,619
HTML5 ¿Àµð¿À ÀÚµ¿Àç»ý
2,618
HTML5 ¿Àµð¿À ¹Ýº¹ Àç»ý
2,617
HTML5 ¿Àµð¿À À̺¥Æ®¸®½º³Ê
2,616
Ŭ¸¯ ÇѹøÀ¸·Î °íÀ¯ÁÖ¼Ò(URL) º¹»çµÇ°Ô ÇÏ´Â ¹æ¹ý
¸ñ·Ï
¹ÂÁ÷Æ®·ÎÆ® ºÎ»ê±¤¿ª½Ã ºÎ»êÁø±¸ °¡¾ßµ¿ ¤Ó °³ÀÎÁ¤º¸Ãë±Þ¹æħ
Copyright ¨Ï musictrot All rights reserved.