我已经设置了一个包含字母表的元素数组,并尝试使用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>
答案 0 :(得分:3)
一些问题,
使用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>");
});
答案 1 :(得分:2)
不是将它附加到循环中,而是构建整个DOM元素并在末尾追加:
var html = ""
$.each(alph, function(index, value){
html += "<a href='#' class='alphaChar'> " + value + "</a>" );
});
$("a.alphaChar").append(html);
答案 2 :(得分:0)
您的代码中存在一些语法错误,我认为您希望这样做:
<强> 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>" );
});
答案 3 :(得分:0)
使用此代码
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>" ));
}