Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在for循环中合并div_Javascript_Html_For Loop - Fatal编程技术网

Javascript 在for循环中合并div

Javascript 在for循环中合并div,javascript,html,for-loop,Javascript,Html,For Loop,是否可以使用JavaScript for循环来组合多个div?我有16套,我想把它们放进一个for循环。我遇到的问题是,我尝试使用的是HTML而不是JavaScript。到目前为止,我还没有看到任何关于如何处理这件事的消息。谢谢你的帮助和建议 下面的代码所做的是从16X17表中捕获预定义的数据,并将其插入到文档中的一个单元格中。然后,我有其他代码使用div id,使我需要的代码可见 <div id="101" class="hidden"><script>document

是否可以使用JavaScript for循环来组合多个div?我有16套,我想把它们放进一个for循环。我遇到的问题是,我尝试使用的是HTML而不是JavaScript。到目前为止,我还没有看到任何关于如何处理这件事的消息。谢谢你的帮助和建议

下面的代码所做的是从16X17表中捕获预定义的数据,并将其插入到文档中的一个单元格中。然后,我有其他代码使用div id,使我需要的代码可见

<div id="101" class="hidden"><script>document.write(tab1a1)</script></div>
<div id="102" class="hidden"><script>document.write(tab1a2)</script></div>
<div id="103" class="hidden"><script>document.write(tab1a3)</script></div>
<div id="104" class="hidden"><script>document.write(tab1a4)</script></div>
<div id="105" class="hidden"><script>document.write(tab1a5)</script></div>
<div id="106" class="hidden"><script>document.write(tab1a6)</script></div>
<div id="107" class="hidden"><script>document.write(tab1a7)</script></div>
<div id="108" class="hidden"><script>document.write(tab1a8)</script></div>
<div id="109" class="hidden"><script>document.write(tab1a9)</script></div>
<div id="110" class="hidden"><script>document.write(tab1a10)</script></div>
<div id="111" class="hidden"><script>document.write(tab1a11)</script></div>
<div id="112" class="hidden"><script>document.write(tab1a12)</script></div>
<div id="113" class="hidden"><script>document.write(tab1a13)</script></div>
<div id="114" class="hidden"><script>document.write(tab1a14)</script></div>
<div id="115" class="hidden"><script>document.write(tab1a15)</script></div>
<div id="116" class="hidden"><script>document.write(tab1a16)</script></div>
<div id="117" class="hidden"><script>document.write(tab1a17)</script></div>
document.write(表1A1)
文件写入(表1A2)
文件写入(表1A3)
文件写入(表1A4)
文件写入(表1A5)
文件写入(表1A6)
文件写入(表1A7)
文件写入(表1A8)
文件写入(表1A9)
文件写入(表1A10)
文件写入(表1A11)
文件写入(表1A12)
文件写入(表1A13)
文件编写(表1A14)
文件写入(表1A15)
文件写入(表1A16)
文件编写(表1A17)
更新:从表中提取数据

<!--Start- Takes Assembly number from Data Table-->  <!--Change "<Col1;" equala columns-->
    for (var x = 1; x<Col1; x++){window["aa"+x] = document.getElementById("part1Table").rows[0].cells[x+1].innerHTML;}
<!--End--- Takes Assembly number from Data Table-->

<!--Start- Takes Assembly Rows from Data Table-->    <!--Change "<Row1;" equals rows-->
    for (var y = 1; y<Row1+1; y++){window["rows"+y] = document.getElementById("part1Table").rows[y].cells[1].innerHTML;}
<!--End- Takes Assembly Rows from Data Table-->

<!--Start- Takes Part number from Data Table-->      <!-- "<Col1;" equals columns----> <!-- If a Column is added to main table add a new line below---->
    for (var z1 =  1; z1 <Col1; z1++) {window["tab1a"+z1]   = document.getElementById("part1Table").rows[1].cells[z1  +1].innerHTML;}
    for (var z2 =  1; z2 <Col1; z2++) {window["tab2a"+z2]   = document.getElementById("part1Table").rows[2].cells[z2  +1].innerHTML;}
    for (var z3 =  1; z3 <Col1; z3++) {window["tab3a"+z3]   = document.getElementById("part1Table").rows[3].cells[z3  +1].innerHTML;}

对于(var x=1;x
对于(变量y=1;y
对于(var z1=1;z1尝试使用AngularJS(这是一个javascript框架,您可以轻松添加到html页面中(请参阅AngularJS.com以获取快速介绍))


有一堆像tab1a1这样的顺序变量是很难处理的。你能把它们放在一个数组中吗?然后

var b=document.getElementsByTagName('body')[0];
for(var i=1; i<18; i++){
    var d=document.createElement('div'); //make a div element
    d.id='10'+i; //assign sequential id
    d.innerHTML=tab1a[i]; //put the the array element content corresponding to that number into the new div element
    b.appendChild(d); //place new element into the DOM
    }
var b=document.getElementsByTagName('body')[0];

对于(var i=1;i另一个选项是使用excel,基本上在第101102103行上创建一个列,并在表中创建一个类似的列。然后只需以字符串格式添加代码行,并将这些列与&绑定在一起。复制所有内容并将其粘贴到记事本中,然后粘贴到代码中

例:


=”感谢所有提出建议的人。我又花了几个小时编写了代码,并提出了以下建议。它在测试中效果非常好。我现在可以从表中添加和删除行和列,而无需更改代码

for (var w =  1; w <Row1; w++)  
for (var z1 =  1; z1 <Col1; z1++) {window["tab" + w + "a" + z1]  = document.getElementById("part1Table").rows[w].cells[z1 +1].innerHTML;}

用于(var w=1;w我不清楚您想做什么。一般来说,您应该阅读JavaScript中的DOM操作…Document.write多年来一直被认为是过时的。您追求的最终结果是什么?您的代码示例…不清楚。最多。我的代码已经完成,并且可以正常工作。我只是想让它变得更简单更简单、更快速地编辑并缩短。这些重复的div在整个文档中重复了17次。本文档共有2081行代码。好的,下面的部分是应该将数据添加到数组中,而不是创建一组按顺序命名的全局变量。我没有使用AngularJS,但它看起来很有希望。I hope它将在我们的服务器上运行。之前我尝试过使用Jquery,它将在我的浏览器中运行,但在我们的生产服务器中不起作用。在尝试之前,我将先看看是否有其他建议。谢谢您的响应。@Jonathon JavaScript在客户端上运行,在他们的浏览器中。应该不管是哪个Web服务器提供代码。@AMG,您确定吗你不能模板化一个脚本标记吗?或者这样做会达到他想要的效果吗?模板可能会在编译过程中多次执行该脚本,不是吗?他们可能出于安全原因明确禁用了它,因为它几乎就像后门“eval”。我从未见过有人尝试过这样做,所以它可能会工作,但另一方面,我认为不会这里有很多很好的理由不使用这种方法,即使它确实有效(就像八个反模式合一).我认为这是公司在我们之前运行自己的header的方式,我们的文档有自己的标题。我以前从未见过这种情况,甚至感到惊讶。当文档在生产中运行时,您查看源代码时,有两个是防御的。他们将更新推到标题,这破坏了大多数脚本。哦,时间到了。我会检查稍后再回来。@JonathanBlaine您是说http头还是说html中有两个元素?
var b=document.getElementsByTagName('body')[0];
for(var i=1; i<18; i++){
    var d=document.createElement('div'); //make a div element
    d.id='10'+i; //assign sequential id
    d.innerHTML=tab1a[i]; //put the the array element content corresponding to that number into the new div element
    b.appendChild(d); //place new element into the DOM
    }
="<div id='" & A1 & "' etc etc
for (var w =  1; w <Row1; w++)  
for (var z1 =  1; z1 <Col1; z1++) {window["tab" + w + "a" + z1]  = document.getElementById("part1Table").rows[w].cells[z1 +1].innerHTML;}
for (var z17 =  1; z17 <Col1; z17++) {window["tab17a"+z17]   = document.getElementById("part1Table").rows[17].cells[z17  +1].innerHTML;}