javascript - JS 循环内循环

标签 javascript jquery html each

你好,我对 jquery 没有什么问题。 首先,我有:

VW BORA 1.9TDI 1990 1995
Audi A3 2.0TFSI 2006 2008

但我想实现:

VW BORA 1.9TDI 1990
VW BORA 1.9TDI 1991
VW BORA 1.9TDI 1992
VW BORA 1.9TDI 1993
VW BORA 1.9TDI 1994
VW BORA 1.9TDI 1995
Audi A3 2.0TFSI 2006
Audi A3 2.0TFSI 2007
Audi A3 2.0TFSI 2008

HTML 代码:

<div class="make">
   <div class="name">VW BORA 1.9TDI</div><div class="start">1990</div><div class="end">1995</div>
</div>
<div class="make">
   <div class="name">Audi A3 2.0TFSI</div><div class="start">2006</div><div class="end">2008</div>
</div>

JS代码:

$('div[class="make"]').each(function(index){
   var html = '';
   var start = $('.start').text();
   var end = $('.end').text();
   var name = $('.name').text();

   for (i=start; i<=end; i++) {
     html += '<div class="'+i+'">'+name+' '+i+'</div>';
   }
   $("#content").html(html)
});

如果 class .make 只包含一个内容,那没问题,但如果 class .make 多次出现且包含不同的内容,则所有内容都放在一起,但应该分开。

像这样:

VW BORA 1.9TDIAudi A3 2.0TFSI 19902006
VW BORA 1.9TDIAudi A3 2.0TFSI 19902007
VW BORA 1.9TDIAudi A3 2.0TFSI 19902008
VW BORA 1.9TDIAudi A3 2.0TFSI 19902009

最佳答案

这对你有用: 请注意,$(".class")始终返回一个数组,因此在您的情况下,您应该使用index值逐一访问。

$('div[class="make"]').each(function(index){
  
   var html = '';
   var links = '';
   var start = parseInt($(this).find(".start").text());
   var end = parseInt($(this).find(".end").text());
   var name = $(this).find(".name").text();
   
   for (i=start; i<=end; i++) {
       html += '<div class="'+i+'">'+name+' '+i+'</div>';
   }
   $("#content").append(html)
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="make">
   <div class="name">VW BORA 1.9TDI</div><div class="start">1990</div><div class="end">1995</div>
</div>
<div class="make">
   <div class="name">Audi A3 2.0TFSI</div><div class="start">2006</div><div class="end">2008</div>
</div>
<br><br>
<div id="content"></div>

关于javascript - JS 循环内循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37969310/

相关文章:

javascript - HTML JS 只有一半的选择列表被删除?

javascript - 替换字符串 JavaScript 中的某些字符

javascript - 如何在不显示 :none? 的情况下删除重复图像

javascript - 如何删除 element.style

javascript - 使用 Gridster.js 启用拖放

jquery - 如何在样式化的选择下拉列表中模仿键盘行为?

javascript - Node.js 无法识别 Express 对象并且我无法设置 CSS/JS 的路径

jquery - 如何确定对象到浏览器窗口右边框的距离

ios - 关闭电源后 HTML5 LocalStorage 在 iOS 上不持久

html - Div 定位 - Css