2011-06-22 81 views
0

我遍歷嘗試添加的格式如下鏈接站點的列表:jQuery的追加越來越時髦

<a href="www.bbc.co.uk">the BBC</a>

,但得到:

<a href="www.bbc.co.uk"></a> 
the BBC 

任何人都可以看到我的」錯了嗎?

function list_sites() { 
    jQuery("#data_container").empty(); 
    var listItems = []; 
    jQuery(sites).each(function(index, element) { 
     var href = element['site_url']; 
     var link_text = element['site_label']; 
     var toAppend = "<a href=" + href + ">" + link_text + "</a>"; 
     listItems.push(toAppend); 
    }); 
    jQuery("#data_container").append(listItems.join(" ")); 
} 
+1

該代碼對我來說看起來很好,但您可能想使用縮進來使其更易於閱讀。 –

+0

您需要在這些鏈接上加上「http://」。 – alex

+3

適用於我http://jsfiddle.net/3sHMT/ –

回答

0

我通過轉義前方注視這個斜槓的分貝。 /變成/ 然後一切正常 - 唷!

+0

然後接受你自己的答案;) –

1

使用的.html(),因爲你正在創建幾個要素:

function list_sites() 
{ 
jQuery("#data_container").empty(); 
var listItems = []; 
jQuery(sites).each(function(index, element){ 
    var href = element['site_url']; 
    var link_text = element['site_label']; 
    var toAppend = "<a href="+href+">"+link_text+"</a>"; 
    listItems.push(toAppend); 
}); 
jQuery("#data_container").html(listItems.join(" ")); 
} 

或者是這樣的:

function list_sites() 
{ 
var container = jQuery("#data_container").empty(); 
jQuery(sites).each(function(index, element){ 
    var href = element['site_url']; 
    var link_text = element['site_label']; 
    $('<a/>').appendTo(container).attr('href',href).text(link_text); 
}); 
}