Javascript乘法时间表

时间:2014-03-03 02:39:07

标签: javascript html

我正在尝试为输入框中输入的任何数字创建Javascript乘法时间表。因此,当我单击“生成”按钮时,它将生成1到12之间的数字乘法,然后以HTML格式打印出其结果。 然后输出结果将打印在HTML表格中。到目前为止,我已经创建了以下代码。

<!DOCTYPE HTML PUBLIC>

<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>5 Multiplication Table</title>
<!--<script type="text/javascript" src="timetable.js"></script> -->
</head>
<body>
   <script>
      function timesTable(){
      for (var i = 0; i <= 12; i++){
          var number1 ={}; //Empty placeholder for input
          var number1 = +document.getElementById("number1").value;
          var input = number1 * i;
          var generate = +document.getElementById("answers").value = input;   
          }
        }
   </script>
   <table>
     <tr>
        <td>Time Table for:</td>
        <td>
           <input type="text" id = "num1" /></td>
        <td rowspan="2">
           <input type="button" value="Generate" onclick="timesTable()"/>
        </td>
        <td style="text-align:right" id="answers">Time Table:</td>
    </tr>
  </table>
</body>
</html>

1 个答案:

答案 0 :(得分:0)

首先,您将不得不将用户的输入解析为值 - parseFloatparseInt将适用于此值,具体取决于您是否需要浮点值或整数值。

其次,您可能希望每个乘数和乘积都有一个新的表格行:例如,

<tr><td>0</td><td>0</td></tr>
<tr><td>1</td><td>42</td></tr>
<tr><td>2></td><td>84</td></tr>

等。这里的棘手问题是能够将这些添加到用户输入的表格末尾,然后在下次按下按钮时再次删除它们。虽然我喜欢自己保持基本,但我肯定会鼓励你使用JQuery来对表进行html更新 - 否则,找到你添加的每一行都很痛苦。你可以使用像

这样的东西
$(".timestable").remove()

删除所有/之前的timestable行(http://api.jquery.com/remove/),然后删除代码,例如

$('#mytable').append("<tr class='timestable'>...</tr>")

写出新(或第一)次表(http://api.jquery.com/append/

的每一行