繁体   English   中英

附加到JQuery中的元素

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM