另一个金发问题...... [英] Another Blonde Question...

查看:64
本文介绍了另一个金发问题......的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试根据

用户输入的文本在输出页面上构建一个表。而我要做的是在一行上创建4个表数据框,然后

在第5行开始一个新行。但我不能说得对,我在这里获得的代码将会在9,29,16等奇数上开始新的一行。我是什么?

做错了吗?

(忽略任何不平衡的大括号或者对i的依赖,因为这是一个小的片段。)


if(!isNaN(mxfld)&& mxfld!= 0){

for(var w = minfld; w< = mxfld; w ++){

if(w%4 == 0){

otpt + ="< td>" + lttr [i] .name +" " + w +"< / td>< / tr>"

}否则if(w%5 == 0){

otpt + =" < TR>< TD>" + lttr [i] .name +" " + w +"< / td>"

} else {

otpt + ="< td>" + lttr [i] .name +" " + w +"< / td>"

}

}

I''m trying to build a table on an output page based on text input by the
user. And what I am trying to do is create 4 table data boxes on a row, then
start a new row on the 5th one. But I can''t quite get it right, the code I
got here will start a new line on odd numbers like 9, 29, 16, etc.What am I
doing wrong?
(ignore any unbalanced braces or the referance to "i", since this is juat a
small snippet.)

if(!isNaN(mxfld) && mxfld != 0) {
for (var w = minfld; w <= mxfld; w++) {
if (w % 4 == 0) {
otpt += "<td>" + lttr[i].name + " " + w + "</td></tr>"
} else if (w % 5 == 0) {
otpt += "<tr><td>" + lttr[i].name + " " + w + "</td>"
} else {
otpt += "<td>" + lttr[i].name + " " + w + "</td>"
}
}

推荐答案

Terry Olson写道:
Terry Olson wrote:
我正在尝试根据
用户输入的文本在输出页面上构建一个表。而我想要做的是在一行上创建4个表数据框,然后在第5行开始一个新行。但我不能说得对,我在这里得到的代码会在9,29,16等奇数上开始新的一行。我做错了什么?
(忽略任何不平衡的大括号或对i的依据,因为这是一个小小的片段。)

if(!isNaN(mxfld)&& mxfld!= 0){
for(var w = minfld; w< = mxfld; w ++){
if if(w%4 == 0){
otpt + ="< td> " + lttr [i] .name +" " + w +"< / td>< / tr>"
} if if(w%5 == 0){
otpt + ="< tr>< td> " + lttr [i] .name +" " + w +"< / td>"
} else {
otpt + ="< td>" + lttr [i] .name +" " + w +"< / td>"
}
}
I''m trying to build a table on an output page based on text input by the
user. And what I am trying to do is create 4 table data boxes on a row, then
start a new row on the 5th one. But I can''t quite get it right, the code I
got here will start a new line on odd numbers like 9, 29, 16, etc.What am I
doing wrong?
(ignore any unbalanced braces or the referance to "i", since this is juat a
small snippet.)

if(!isNaN(mxfld) && mxfld != 0) {
for (var w = minfld; w <= mxfld; w++) {
if (w % 4 == 0) {
otpt += "<td>" + lttr[i].name + " " + w + "</td></tr>"
} else if (w % 5 == 0) {
otpt += "<tr><td>" + lttr[i].name + " " + w + "</td>"
} else {
otpt += "<td>" + lttr[i].name + " " + w + "</td>"
}
}




使用2 for循环。一个用于创建TD对,另外一个用于创建TR对:

伪代码:


定义具有所需列数(td对)的变量。

将数组长度除以列数以获得行数(tr

对) 。把它围起来。通过天花板或圆形+1。

写一个创建tr对的for循环。

在for循环中,有第二个循环创建tr对。 br />
有一个全局计数器在内部for循环中递增。

使用该全局计数器访问lttr的元素。


拍摄它,回复你的结果。我会写它但是我今天生病了,只是太累了(或者懒得,拿你的选择)来写它

并测试它。


-

兰迪

comp.lang.javascript常见问题 - http://jibbering.com/faq


您好,


我想知道你的问题。我得到了你的代码片段工作。我只是改变了代码位置,否则我会收到错误。你的代码是类似于那个的b $ b,它总是在FOUR表数据之后开始一个新行:


var minfld = 1;

var mxfld = 18;

var otpt ="< table> \ n< tr>" ;;

if(!isNaN(mxfld)& & mxfld!= 0){

for(var w = minfld; w< = mxfld; w ++){

if(w%4 == 0){

otpt + ="< td>" +a + " + w +"< / td>< / tr> \ n"

}否则if(w%5 == 0){

otpt + = "< TR>< TD>" +b + " + w +"< / td>"

} else {

otpt + ="< td>" +c + " + w +"< / td>"

}

}

}

otpt + = "< / tr> \ n< / table>" ;;

alert(otpt);


这不适用于您的机器吗? ??如果没有,可能需要一些额外的

信息。


来自

Thomas的好问候
Hello,

I am wondering about your problem. I got your code snippet work. I have just
changed the code positions where I get an error otherwise. Your code is
similar to that one and it starts a new row always after FOUR table datas:

var minfld=1;
var mxfld=18;
var otpt = "<table>\n<tr>";
if(!isNaN(mxfld) && mxfld != 0) {
for (var w = minfld; w <= mxfld; w++) {
if (w % 4 == 0) {
otpt += "<td>" + "a" + " " + w + "</td></tr>\n"
} else if (w % 5 == 0) {
otpt += "<tr><td>" + "b" + " " + w + "</td>"
} else {
otpt += "<td>" + "c" + " " + w + "</td>"
}
}
}
otpt += "</tr>\n</table>";
alert(otpt);

Does this not work on your machine??? If not, maybe some additional
information is needed.

Nice greetings from
Thomas


在文章< ZJdbd.93925
In article <ZJdbd.93925


这篇关于另一个金发问题......的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆