如何创建一个使用javascript提示创建html表的网站? var r=提示(“有多少行?”); var c=提示(“有多少列?”); var red=提示(“多红?”); var green=提示(“绿色程度如何?”); var blue=提示(“多蓝?”); 文件。写(“”); 对于(var r=i;i>-1;i--){ 文件。写(“”); 对于(var c=i;i>-1;i--){ 文件。写(“”); }; 文件。写(“”); }; 文件。写(“”);

如何创建一个使用javascript提示创建html表的网站? var r=提示(“有多少行?”); var c=提示(“有多少列?”); var red=提示(“多红?”); var green=提示(“绿色程度如何?”); var blue=提示(“多蓝?”); 文件。写(“”); 对于(var r=i;i>-1;i--){ 文件。写(“”); 对于(var c=i;i>-1;i--){ 文件。写(“”); }; 文件。写(“”); }; 文件。写(“”);,javascript,variables,html-table,Javascript,Variables,Html Table,我的代码有什么问题?我回答了所有提示,但屏幕上什么也没发生。我的教授说我需要另一个for循环中的for循环,我缺少什么?多重更正: 不要多次使用document.write,因为每次调用都会覆盖正文的内容 您的迭代器分配逻辑是向后分配的-分配i=r,而不是r=i,因为右侧表达式(本例中为变量)的值被分配给左侧的变量 您需要为内部for循环使用单独的迭代器变量(例如j),否则会干扰外部循环 迭代器条件关闭1。如果要从最大数量(行、列)开始递减,则在i/j大于0而不是-1时迭代 var r=pro

我的代码有什么问题?我回答了所有提示,但屏幕上什么也没发生。我的教授说我需要另一个for循环中的for循环,我缺少什么?

多重更正:

  • 不要多次使用document.write,因为每次调用都会覆盖正文的内容
  • 您的迭代器分配逻辑是向后分配的-分配
    i=r
    ,而不是
    r=i
    ,因为右侧表达式(本例中为变量)的值被分配给左侧的变量
  • 您需要为内部
    for
    循环使用单独的迭代器变量(例如
    j
    ),否则会干扰外部循环
  • 迭代器条件关闭1。如果要从最大数量(行、列)开始递减,则在i/j大于0而不是-1时迭代
  • var r=prompt(“多少行?”);
    var c=提示(“有多少列?”);
    var red=提示(“多红?”);
    var green=提示(“绿色程度如何?”);
    var blue=提示(“多蓝?”);
    var html='';
    对于(var i=r;i>0;i--){
    html+='';
    对于(var j=c;j>0;j--){
    html+='';
    };
    html+='';
    };
    html+='';
    document.write(html);
    //或者,不要使用document.write,而是使用以下行:
    //document.body.innerHTML=html
    
    一个问题是您没有初始化i变量(代码中没有“var i”)。此变量是循环的索引变量,请将其设置为用户输入的行/列输入变量

    此外,当您放置嵌套循环时,不要尝试重用索引变量(i)

    通过循环迭代器的逻辑,您实际上希望循环运行到条件i>0

    将循环更改为类似以下内容:

    <!DOCTYPE html>
    <html>
    <head>
    <title></title>
    <script type="text/javascript">
    
        var r = prompt ("how many rows ?");
        var c = prompt ("how many columns ?");
        var red = prompt ("how red ?");
        var green = prompt ("how green ?");
        var blue = prompt ("how blue ?");
        document.write('<table style="width:100%"     bgcolor="'+red+''+green+''+blue+'">');
        for(var r = i; i > -1; i--){
            document.write('<tr>');
            for(var c = i; i > -1; i--){
                document.write('<th></th>');
            };
            document.write('</tr>');
        };
        document.write('</table>');
    
    </script>
    </head>
    <body>
    
    </body>
    </html>                                 
    
    for(变量i=r;i>0;i--){
    文件。写(“”);
    对于(var j=c;j>0;j--){
    ...
    
    检查html中的th标记是什么,你真的想要td吗


    然后您仍然看不到刚刚创建的表,因为“单元格”中没有内容,因此您可以添加内容,或者在使用浏览器开发人员工具时可以看到该表。

    doc.write的写入操作“就在那里”。这意味着您正在将表吐出到文档的确切位置-表是
    内容,但您正在将其吐出到文档的
    中。因此,我应该移动整个文档。write(“”);for(var r=i;i>-1;i--){document.write(“”);for(var c=i;i>-1;i--{document.write(“”)}你为什么不试试呢?虽然我们很乐意帮忙,但你应该自己做作业……嗯,这不管用。D:我检查了我们在讲座上做的所有“document.write”的例子代码写在标题部分。谢谢你的回答。很抱歉,我不能投票给我的声誉有用的bc:P
    for(var i = r; i > 0; i--){
        document.write('<tr>');
        for(var j = c; j > 0; j--){
    ...