[英]Appending to an element in JQuery
我建立了一個包含字母的元素數組,並嘗試使用jquery將每個值附加為超鏈接。 我可以在數組中看到我的值,但是在我的頁面上它們顯示為未定義。 有人可以照亮一點嗎? 謝謝。
<p id="alphabet"><a href="#" class="alphaChar"></a></p>
<script>
var alph = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "W", "X","Y","Z"];
$.each(alph, function(index, value){
$("a .alphaChar").append().html( "<a href='"#"' class='alphaClass'> " + alph.val + "</a>" );
});
</script>
很多問題
使用value
代替alph.val,
您的選擇器有誤,(您正在尋找帶有alphachar類的孩子)
$("a.alphaChar")
並且您的.append().html(..)
是錯誤的-您可以在JQuery中鏈接函數,因此您實際要做的是“不添加任何內容,然后將整個元素的HTML設置為...”。
$("a.alphaChar").append( < HTML GOES HERE > );
看到這個小提琴 http://jsfiddle.net/jFIT/wW5CZ/
var alph = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "W", "X", "Y", "Z"];
$.each(alph, function (index, value) {
console.log(value);
$("a.alphaChar").append("<a href='\"#\"' class='alphaClass'> " + value + "</a>");
});
而不是將其附加到循環中,而是構建整個DOM元素並在末尾附加:
var html = ""
$.each(alph, function(index, value){
html += "<a href='#' class='alphaChar'> " + value + "</a>" );
});
$("a.alphaChar").append(html);
您的代碼中存在一些語法錯誤,我認為您想這樣做:
JavaScript的:
var alph = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "W", "X","Y","Z"];
$.each(alph, function(index, value){
$("a.alphaChar").append("<a href='#' class='alphaClass'> " + value + "</a>" );
});
使用此代碼
var alph = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P","Q", "R", "S", "T", "U", "W", "X","Y","Z"];
for (var i=0; i < alph.length; i++) {
$("a .alphaChar").append($("<a href='#' class='alphaClass'>" + alph[i] + "</a>" ));
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.