2013-02-20 27 views
0

我有這樣的代碼:JQuery Ajax,我怎麼不重複我的代碼?

我希望它在默認情況下執行某些操作,基本上當您查看頁面時,它會發出ajax請求並顯示所有數據。

但是當你點擊一個鏈接時,它會顯示特定的數據。

但是,如何在不重複代碼的情況下做到這一點。

例如:

// when click on the link 

    $('a').click(function(){ 

    $.getJSON('file.ext', function(data){ 

     //same code 

    }); 

    }); 

    // when the page is loaded 
    $.getJSON('file.ext', function(data){ 

     //same code 

    }); 

回答

3

只是包裝您的通話.getJSON()的是從兩個位置調用的函數。

// Define function 
function getData() { 
    $.getJSON('file.ext', function(data){ ... }); 
} 

// Call on click 
$('a').click(function() { 
    getData(); 
}); 

// Call on load 
getData(); 
+0

非常感謝。 – 2013-02-20 21:34:51

1

只需創建一個函數,一次寫入,多次使用。

$('a').click(function(){ 
    $.getJSON('file.ext', function(data){ 
     customFunction(); 
    }); 
}); 

// when the page is loaded 
$.getJSON('file.ext', function(data){ 
    customFunction(); 
}); 

customFunction = function() { 
    //code 
};