我正在尝试为一个项目创建标记表,该项目当前正在处理我拥有诸如
之类的名称的地方var names = ["n1","n2","n3","n4","n5","n6","n7","n8"];
我想在表列中显示名称并生成一定数量的文本框,这些文本框是在循环中定义的,但到目前为止,我仍然无法同时显示名称的文本框。
html+= "<table>";
html+= "<table style='border:1px solid black;'><tr><th>Student Name</th><th>ICA's</th>";
for(var i = 0; i<=names.length;i++)//retrieve names from the array
{
for(var j=1;j<=2;j++)//amount of textboxes need to be created
{
html+= ("<tr><td id='tableTD'>"+names[i]+"</td><td>"+txtBox+"</td></tr></table>");
}
}
display.innerHTML = html;
}
这部分代码的结果是,我得到了重复的名称,但旁边却有文本框,但不是全部都在1行中,例如“ n1:textbox1,textbox2”
我必须在表格中显示所有内容,而且我仅限于html和javascript,而不能使用服务器端语言的jQuery。
我似乎无法理解问题的根源。
答案 0 :(得分:0)
@诺亚B 下面的代码是我从您那里获得的用于显示表格的文件,这些表对我进行了一些修改以适应我的要求。
for(var i = 0; i<names.length;i++)//retrieve names from the array
{
html += "<tr id='row" + i +"'><td style='border:1px solid black;'>"+names[i]+"</td>";
for(var j=1;j<=2;j++)//amount of textboxes need to be created
{
html+= "<td style='border:1px solid black;'><input type='text' class='stdMrk' placeholder='0' value='0' /></td>";
}
for(var k=1;k<=1;k++)//display project or final exams txt box
{
html+= "<td style='border:1px solid black;'><input type='text' class='stdMrk' placeholder='0' value='0' /></td>";
}
html += "</tr>";
}
但是我的另一个问题是,现在我需要检索每行的值,并且从您看到的内容中,ive添加了一个附加的for循环来显示另一组与上一个类名相同的文本框。 / p>
例如,n1将从键盘输入3int值,而我必须计算该3value并将其返回。它必须是一个循环,每个名称都会重复。
这是我为检索该值而编写的代码,但它以1比1的形式显示了所有值,而没有任何办法知道它属于哪一行。
var txtValue = document.getElementsByClassName("stdMrk");
if(txtValue.length>0)
{
for(var i = 0;i<=y;i++)
{
x += parseInt(txtValue[i].value);
}
alert(x);
}//edit ive manage to create this but still need to iterate through all the names...
先谢谢了。