使用JS / jQuery迭代基于字符串的数组

时间:2014-01-17 16:40:07

标签: javascript jquery

我有这样的事情:

$(document).ready(function(){ 
  var veeCountries = ["America", "Japan"];

  $.each(veeCountries, function( ? ) {
    $("#content").html("<p>" + value + "</p>");
  });
});

我正在尝试输出这样的内容:

<p>America</p>
<p>Japan</p>

但是我被困了,这是最好最简单的方法吗?

3 个答案:

答案 0 :(得分:4)

几乎与$ .each()上的文档中的示例相同:http://api.jquery.com/jquery.each/

$.each(veeCountries, function(index, value) {
   $("#content").append("<p>" + value + "</p>");
  });
});

答案 1 :(得分:3)

each方法将索引和数组的实际项传递给回调函数。

$(document).ready(function(){ 
  var veeCountries = ["America", "Japan"];

  $.each(veeCountries, function(index, item) {
    $("#content").append("<p>" + item + "</p");
  });
});

阅读jQuery.each

上的文档

答案 2 :(得分:2)

.each()的参数如果是索引和本机DOM元素,但使用html()覆盖每次迭代的内容。
在循环中使用append(),或在循环中创建字符串并将其传递给html()一次。

$(document).ready(function(){ 
  var veeCountries = ["America", "Japan"],
      output       = '';

  $.each(veeCountries, function( index, value ) {
      output += "<p>" + value + "</p>");
  });

  $("#content").html(output);

});

或者有点整洁

$("#content").html('<p>' + veeCountries.join('</p><p>') + '</p>');