2013-02-14 76 views
1

我已经在javascript中创建了一个表。它基于用户输入,并将检查以确保输入的值是一个数字。但我怎么也让它检查,以确保输入的值是 高于0 和小于10写javascript以动态创建表。需要帮助验证用户输入

<html> 
<head> 
    <title>Homework 1</title> 

    <script language="javascript" type="text/javascript"> 
    function doWork(){ 
    var rows = document.getElementById("input1").value; 
    var columns = document.getElementById("input2").value; 
    //alert(rows); 
    //alert(columns); 
    if(isNaN(rows) == true || isNaN(columns) == true){ 
     document.getElementById('tablePlacement').innerHTML = "Input must be integer"; 
    } 
    else{ 
    var htmlInput = ""; 
    htmlInput += "<table border='1'>"; 
    htmlInput += "<tr>"; 

    //Column Headers 
    for (i = 0; i <= columns; i++){ 
     htmlInput += ("<td><b>" + i + "</b></td>"); 
    } 
    htmlInput += "</tr>"; 
    for (i = 1; i <= rows; i++){ 
     htmlInput += ("</br><tr><td><b>" + i + "</b></td>"); 

     for (j = 1; j<= columns; j++){ 
      var multiplyResult = i * j; 
      htmlInput += ("<td>" + multiplyResult + "</td>"); 
     } 
     htmlInput += "</tr>"; 
    } 
    htmlInput += "</table>"; 
    document.getElementById('tablePlacement').innerHTML = htmlInput; 
    } 

    }; 
    </script> 
</head> 
<body> 
    <form id="input1Form"> 
     Rows: <input type="text" id="input1"> 
    </form> 
    <form id="input2Form"> 
     Columns: <input type="text" id="input2"> 
    </form> 
    <button type="button" onclick="doWork()">Enter</button> 
    <div id="tablePlacement"> 
    </div> 
</body> 

回答

1
if(rows <=0 || rows >= 10){ 
    document.getElementById('tablePlacement').innerHTML = "Input rows must be between 1 and 9"; 
} 

if(cols <=0 || cols >= 10){ 
    document.getElementById('tablePlacement').innerHTML = "Input cols must be between 1 and 9"; 
} 
+0

我知道如何编写代码。我更疑惑在哪里实际放置它。这是嵌套的if语句吗?它将如何工作? – onTheInternet 2013-02-14 01:09:31

+0

如果语句像这样:if(rows不是一个数字,或者行<= 0,或者rows> = 10,或者cols不是一个数字,或者cols是<= 0,或者cols是> = 10){渲染一般的错误信息,如“行和列必须是小于10的正数”} else {... render table ...} – codefactor 2013-02-14 01:13:29