2012-03-16 59 views
3

我有兩個按鈕,它們的點擊事件執行ajax操作。我需要知道如何改變調用它的元素,例如,如果你點擊第一個按鈕,ajax使用其「成功」函數中的第一個按鈕將其值更改爲返回的數據。jQuery選擇調用AJAX的元素

這是否有意義?另一種解釋方式..我想要一堆按鈕,當點擊時,執行ajax調用,並且當該調用完成時,被單擊的按鈕被刪除。

回答

1

是的,這是有意義的,使用AJAX context屬性:

function doAjax() { 
    $.ajax({ 
     url: "test.html", 
     context: this, // <=== 
     success: function() { 
      $(this).hide(); 
     } 
    }); 
}​  

$('input[type="button"]').click(doAjax); 

方面:

這個對象將作出所有Ajax相關回調的背景下。默認情況下,上下文是表示調用中使用的ajax設置 的對象($ .ajaxSettings與傳遞給 $ .ajax的設置合併)。例如,指定DOM元素作爲上下文將使得 成爲請求的完整回調的上下文。

AJAX docs

+1

完美,謝謝。 – DanRedux 2012-03-16 02:07:25

+0

等一下,可以用.post或.get來完成嗎? – DanRedux 2012-03-16 02:07:39

+0

@DanRedux。我不這麼認爲......發佈並獲得有限的一組功能。 – gdoron 2012-03-16 02:08:58