2010-10-08 22 views
1

我是JQuery的新手。我不是在尋找代碼 - 只是有人指點我正確的方向或建議我採取最好的方法。JQuery:如何使用AJAX從一個頁面中提取元素,操縱它們並將它們插入到當前頁面的DOM中?

這裏的情景:

當有人點擊將pageA.html一個鏈接,我想用「sampleId」,它存在於pageB.html的ID顯示DIV的全部內容進入網頁A上一個DIV叫 「placeHolderId」。對於這一點,我想我可以簡單地使用類似下面的代碼:

$(document).ready(function() { 
    $('a').click(function() { 
     $('#placeHolderId').load('pageB.html #sampleId'); 
    }) 
}) 

但我真正想要做的是操縱#sampleId(尤其是修改可能與標識對當前衝突的任何ID的第一內容頁面)。我想過把它加載到頁面A上的一個非顯示容器中,但我懷疑這不是正確的方法,除了我不確定在成爲DOM的一部分後如何更改ID 。

我認爲答案是使用低級別AJAX方法,但我不知道如何實際操作數據(如改變內稱爲「主」到「分」任何ID)(?):

$.ajax({ 
    url: 'pageB.html', 
    type: 'GET', 
    dataType: 'html', 
    success: function(data) { 
    // THIS IS WHERE I'M LOST... 
    } 
}); 

我發現在某些時候如果有人談到過濾器後,我想,但似乎無法再找到它。

任何幫助,提示或建議將不勝感激,

提前許多感謝,

大衛

回答

2

這一切只是憑空猜測,因爲我還沒有嘗試過自己,但嘗試更換

function(data) { 
// THIS IS WHERE I'M LOST... 
} 

像這樣的東西。

function(data) 
{ 
    //Let jQuery attempt to parse the info 
    var fakeBody = $(data); 
    //use fakebody as a context for your basic manipulation 
    $('a.someClass',fakeBody).attr('href','http://google.com'); 
    //retrieve some nodes 
    var menuItems = $('li.menuItem',fakeBody); 
    //add that to your current menu 

    $('ul.menu').append(menuItems); 

} 
+0

謝謝你,Kristoffer。我會試驗你的建議 - 對我來說看起來相當不錯。 – 2010-10-08 10:01:22

+0

祝你好運 – 2010-10-08 10:02:25

相關問題