2013-08-28 62 views
0
我使用AJAX使用jQuery得到一些HTML內容,在這裏

裹元素是成功的功能:錨與jQuery

function successFn(data) { 

    var keyWord = $("#input").val(); 

    // convert string html to object 
    var anchors = $('<div/>').html(data).contents(); 

    // add data-keyword to all results 
    anchors.each(function (i) { 
     $(this).attr('data-keyword', keyWord); 
     $(this).wrap('<div class="xXx"></div>'); 
    }); 

    // print results 
    $("#results").html(anchors); 
} 

data包含AA名單:

<a href="link">...children...</a> 
<a href="link">...children...</a> 
<a href="link">...children...</a> 
<a href="link">...children...</a> 

所以我m試圖添加一個屬性到這些鏈接,這是工作然後我包裝每個錨與div,這是行不通的。

爲什麼不包裝?

+0

什麼是不工作的意思?最終結果只是沒有包裝divs嗎? – Jordan

+0

它似乎工作。你能創建一個小提琴來展示這個問題嗎? – FakeRainBrigand

+0

@Jordan,FakeRainBrigand,正是我的意思......最後的ouptut沒有包裹...無論如何,epascarello解決了我的問題 – Enissay

回答

2

問題是你只是添加錨元素,你不包括你包裝的內容。

function successFn(data) { 

    var keyWord = $("#input").val(); 

    // convert string html to object 
    var wrapper = $('<div/>').html(data); 
    var anchors = wrapper.contents(); 

    // add data-keyword to all results 
    anchors.each(function (i) { 
     $(this).attr('data-keyword', keyWord); 
     $(this).wrap('<div class="xXx"></div>'); 
    }); 

    // print results 
    $("#results").empty().append(wrapper.contents()); 
} 
+0

我知道這是問題......但因爲我是新來的JS ,我無法糾正它......感謝這個快速回復:) – Enissay