嗨可以在將GET ajax請求的內容附加到頁面內容之前編輯它嗎?在將其添加到html之前編輯ajax數據
我得到一個新的HTML頁面的主體的內容,並且想添加一些類:)。
這可能是不可能的,
感謝您的幫助!
嗨可以在將GET ajax請求的內容附加到頁面內容之前編輯它嗎?在將其添加到html之前編輯ajax數據
我得到一個新的HTML頁面的主體的內容,並且想添加一些類:)。
這可能是不可能的,
感謝您的幫助!
的見jQuery.ajax辦法做到這一點不jQuery是使用document.createDocumentFragment
ajax({ //Your preferred method
done: function(response){
var myDom = document.createDocumentFragment();
myDom.innerHTML = response.responseText;
// your manipulations same as you would with "document"
document.appendChild(myDom);
}
});
資源:
這絕對不是不可能的。你只需要一種方法來解析它。最簡單的方法實際上是將其附加到隱藏容器中的頁面上,然後執行所需的任何DOM操作。然後,您可以重新定位html或在適當位置顯示它。
如果您使用的是jQuery,那麼您實際上可以在您返回的html字符串上執行任何jQuery操作。但是,在某些較舊的瀏覽器中,這樣做性能不佳。
如果您正在使用jQuery,你可以嘗試以下的(注意,這可能是非常耗費資源的,這取決於你加載的頁面大小):
$.ajax({
/*parameters here*/
success: function(data,textStatus){
processData(data);
}
});
function processData(data){
//this line creates jQuery object that contains DOM model for loaded page
var page = jQuery(data);
page.find('#id-of-element-to-add-some-class').addClass('*your class*');
page.find('#table').addClass('myTable'); //adds class myTable to all tables in the document
//placeholder for loaded page content. Could be something like $('#placeholder')
var target_element = document;
$(target_element).append(page);
}
的細節