Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/424.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/82.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提示动态创建表(不工作)_Javascript_Html_Html Table - Fatal编程技术网

使用Javascript提示动态创建表(不工作)

使用Javascript提示动态创建表(不工作),javascript,html,html-table,Javascript,Html,Html Table,这是我到目前为止所做的,但它甚至没有提示用户,它显示了一条细黑线(我认为这是边框) 动态创建表 var running=true//用于确定是否应继续运行的布尔值 (跑步时){ var i=0; var input;//保存输入值的变量 输入=窗口。提示(“请输入产品编号,然后输入销售数量,用逗号分隔。完成后按enter键”); var分割; var num1; var num2; 如果(输入!=“”){ split=input.split(','); num1=分割[0]; num2=0;

这是我到目前为止所做的,但它甚至没有提示用户,它显示了一条细黑线(我认为这是边框)


动态创建表
var running=true//用于确定是否应继续运行的布尔值
(跑步时){
var i=0;
var input;//保存输入值的变量
输入=窗口。提示(“请输入产品编号,然后输入销售数量,用逗号分隔。完成后按enter键”);
var分割;
var num1;
var num2;
如果(输入!=“”){
split=input.split(',');
num1=分割[0];
num2=0;
如果(拆分长度>1){
num2=拆分[1]。修剪();
}
}
开关(num1){
案例1:
//不重要的计算
打破
案例2:
//不重要的计算
打破
违约:
文件。书面形式(“”);
书面文件(“文本”);
书面文件(“文本”);
文件。书面形式(“”);
文件。书面形式(“”);
书面文件(“文本1”);
书面文件(“文本2”);
书面文件(“文本3”);
文件。书面形式(“”);
运行=错误;
}
}

我尝试将其包含在头部和正文中,还尝试在脚本中和脚本外部声明表标记。

您的代码中有一些错误,例如:

<table style = "width:100%" cellspacing="5" border="2">
不能定义包含键的变量。正确的方法是:

var input = [];
switch(num1) {
  //  ... code
}
其他

正确的方法是:

var input = [];
switch(num1) {
  //  ... code
}

您可以使用检查html错误,如果您使用的是Firefox或Chrome等现代浏览器,则可以按f12键访问javascript错误。

您的代码有几个javascript错误。请尝试从以下内容开始:

<html>
    <head>
        <meta charset = "utf-8">
        <title>Dynamically creating a table</title>
        <table style = "width:100%" cellspacing="5" border="2">
        <script type = "text/javascript">
            var running = true; //boolean to determine if we should continue running
            while (running) {
                var input = window.prompt("Please enter your two numbers seperated by a comma.");
                var split = input.split(',');
                var num1= split[0];
                var num2= input[1];

                switch(num1) {
                    case '1':
                        document.writeln("<tr>");
                        document.writeln("<td>text</td>");
                        document.writeln("<td>text</td>");
                        document.writeln("</tr>");
                    case '2':
                        document.writeln("<tr>");
                        document.writeln("<td>text1</td>");
                        document.writeln("<td>text2</td>");
                        document.writeln("<td>text3</td>");
                        document.writeln("</tr>");
                    case '99':
                        running = false;
                    }
            }
        </script>
        </table>
    </head>     
    <body>
    </body>
</html>

动态创建表
var running=true//用于确定是否应继续运行的布尔值
(跑步时){
var input=window.prompt(“请输入用逗号分隔的两个数字”);
var split=input.split(',');
var num1=分割[0];
var num2=输入[1];
开关(num1){
案例“1”:
文件。书面形式(“”);
书面文件(“文本”);
书面文件(“文本”);
文件。书面形式(“”);
案例“2”:
文件。书面形式(“”);
书面文件(“文本1”);
书面文件(“文本2”);
书面文件(“文本3”);
文件。书面形式(“”);
案例'99':
运行=错误;
}
}

这是一个语法错误:
var输入[i]-脚本的执行将在该行停止。如果打开浏览器的开发人员控制台并刷新页面,您应该会看到一条关于它的错误消息。另外,您的
switch
语句的语法不正确(一旦您想为每种情况添加一些
break
语句)。即使这样,它也只能工作一次,逻辑需要一些修改。谢谢,这在很多方面帮助了我,我现在运行我的代码,它接受输入,但它在第一次输入之后就吐出了表。我用清理过的代码更新了原来的帖子。谢谢,这帮助了我完成上面的帖子。我已经更新了我的代码,现在正在运行。但是,它在第一次输入之后就吐出了一个表。我还想知道,有没有一种方法可以在浏览器中一步一步地执行脚本?您可以添加行
调试器在一行之后,如果您启用了开发人员工具(使用F12键),则此操作有效
<html>
    <head>
        <meta charset = "utf-8">
        <title>Dynamically creating a table</title>
        <table style = "width:100%" cellspacing="5" border="2">
        <script type = "text/javascript">
            var running = true; //boolean to determine if we should continue running
            while (running) {
                var input = window.prompt("Please enter your two numbers seperated by a comma.");
                var split = input.split(',');
                var num1= split[0];
                var num2= input[1];

                switch(num1) {
                    case '1':
                        document.writeln("<tr>");
                        document.writeln("<td>text</td>");
                        document.writeln("<td>text</td>");
                        document.writeln("</tr>");
                    case '2':
                        document.writeln("<tr>");
                        document.writeln("<td>text1</td>");
                        document.writeln("<td>text2</td>");
                        document.writeln("<td>text3</td>");
                        document.writeln("</tr>");
                    case '99':
                        running = false;
                    }
            }
        </script>
        </table>
    </head>     
    <body>
    </body>
</html>