Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/468.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循环创建tr';s和td';表元素中的\\无法分析来自td';s_Javascript_Html_For Loop_Createelement - Fatal编程技术网

Javascript 使用for循环创建tr';s和td';表元素中的\\无法分析来自td';s

Javascript 使用for循环创建tr';s和td';表元素中的\\无法分析来自td';s,javascript,html,for-loop,createelement,Javascript,Html,For Loop,Createelement,我正在创建一个表,在表中创建tr和td。带循环的表通过减法计算,并从for循环中创建一列结果。当我尝试添加下一列时,它不会解析计算,而是继续执行计算 for (i=foo; i<bar+1; i++) { var tableNode = document.getElementById('tableID'); var trNode = document.createElement('tr'); var trValue = '';

我正在创建一个表,在表中创建tr和td。带循环的表通过减法计算,并从for循环中创建一列结果。当我尝试添加下一列时,它不会解析计算,而是继续执行计算

for (i=foo; i<bar+1; i++)
{               
    var tableNode = document.getElementById('tableID');

    var trNode = document.createElement('tr');
    var trValue = '';

    var tdNode = document.createElement('td');
    var tdValue = parseFloat(i) + parseFloat(500); //this is calculating 500 and not concatenating 500 for every iteration.

    trNode.innerHTML = trValue;
    tdNode.innerHTML = tdValue;

    tableNode.appendChild(trNode);
    trNode.appendChild(tdNode);             
}

for(i=foo;i如果要连接
parseFloat(i)
parseFloat(500)
,请执行以下操作:

var tdValue = parseFloat(i) + " " + parseFloat(500);
而不是
parseFloat(i)+parseFloat(500)
,因为这将添加浮点值,
tdValue
将是总和(类型number

注意中间的“<代码>”/“代码>(包含空格的字符串),它将考虑元素被连接为<强>字符串,并且连接的结果是类型<强> String

< P>这应该起作用:

设foo=1,
bar=3;
for(设i=foo;i
&
for
循环 如果要使用
for
循环生成
,则应使用两个
for
循环-第一个循环用于行,第二个循环用于每行的单元格。以下演示具有以下内容:

  • 具有以下功能的
    • 输入行数的
    • 输入每行的单元格数的
    • 按钮触发调用函数
      generateTable()
      的单击事件
  • 使用可以访问
    及其所有表单控件
  • 方法将自动创建一个元素并附加它
当然,
及其所有相关内容都是可选的,只是为了演示而添加的。只需为变量
rowQty
celQty
分配数字,就可以单独使用循环

演示
/*
可选的
*/
var ui=document.forms[0]。元素;
var btn=ui.btn;
btn.onclick=可生成表;
/*
要求的
*/
函数生成器(e){
var table=document.getElementById('T0');
/*
如果不使用
将下面两行替换为:
*/
//var rowQty={any integer}
//var celQty={任何整数2或greter}
var rowQty=ui.rowData.value;
var celQty=ui.celData.value;
for(设i=0;i
表格{
边界塌陷:塌陷;
表布局:固定;
}
桌子
运输署{
边框:1px实心#000;
文本对齐:右对齐;
}
运输署{
最小宽度:3cm;
最大宽度:150px;
}
td:第一种类型{
宽度:3cm;
文本对齐:居中;
}
输入{
显示:内联块;
文本对齐:居中;
宽度:5cm;
}

排:
每行单元格数:
去

使用parseInt而不是parseFloat尝试在两者之间添加一个空字符串。var tdValue=parseFloat(i)+“”+parseFloat(500);