2011-07-13 41 views
0

我試圖克隆(或移動)信息從一個頁面到另一個使用jQuery和Ajax。此代碼目前沒有爲我做任何事情,是我必須與之合作:jQuery克隆或從另一個頁面移動Ajax信息

本質上它是檢查頁面ID爲Deal_1。如果找到我想要移動(或克隆)這三個div 是在頁面被檢查與類deal-product-namedeal-saving-stock-details & deal-end,到我目前的頁面。

$.ajax({ 
url: "http://tsqja.deznp.servertrust.com/dealoftheday.asp", 
context: document.body, 
dataType: 'html', 
success: function(data){  
     if ($(data).find('#Deal_1').length >= 1) {       
      $('#dealofdaytop').after($('.deal-product-name')); 
      $('#dealdayprice').after($('.deal-saving-stock-details')); 
      $('#dealdayprice').after($('.deal-end'));  
     } 
}); 

這是當前頁面上我想的div移動到:

<div class="deal" id="dealday"> 
    <div id="dealofdaytop" align="center"><img style="opacity:0.8;filter:alpha(opacity=80)" src="http://www.mysite.com/v/newsite/dealofday/dealofdaytop.png"> </div> 
    <div id="dealdayprice" style="height: 60px;"></div> 
    <div id="dealdaybg"></div> 
</div> 
+0

應該不使用.after()的.append()intead嗎? –

回答

1

我想應該是這樣的;

if ($(data).find('#Deal_1').length >= 1) {          
    $('#dealofdaytop').after($('.deal-product-name', data)); 
    $('#dealdayprice').after($('.deal-saving-stock-details', data)); 
    $('#dealdayprice').after($('.deal-end', data));    
} 

工作示例代碼:WebForm2.aspx

希望的
<div id="Deal_1"> 
    <div class="deal-product-name"> 
     Test data 
    </div> 
</div> 

$(document).ready(function() { 
    $.ajax({ 
     url: "http://localhost/WebApplication1/WebForm2.aspx", 
     context: document.body, 
     success: function (data) { 
      $(".dummy_container").after($(".deal-product-name", data)); 
     } 
    }); 
}); 

WebForm1.aspx的

內容
<div class="dummy_container"></div> 

內容有所幫助。

+0

仍然沒有運氣。我需要POST請求嗎? – ToddN

+0

.deal-product-name是屬於來自dealoftheday.asp的某個元素的類嗎? –

+0

這是正確的。這些類都在dealoftheday.asp上,我試圖移動(或克隆)到另一個頁面。 – ToddN

0

在你的成功處理,你要直接返回的數據使用jQuery DOM功能,這只是一個字符串這裏。據我所知,你不能那樣做。如果你的ajax調用的結果是HTML並且你想將它插入到你的頁面中,那麼你可以使用它的jQuery DOM函數,或者你可以直接在字符串上使用regex函數。

這個問題一般在我看來,你可能希望響應是JSON與不同的返回對象中的響應的不同部分,然後你可以達到與JavaScript的這些對象,抓住你正在尋找的結果並用它來修改頁面的相應部分。

相關問題