0
<html>
    <head>
    <script>
        function showUser()
        {
            for (var i = 0; i < 10; i++)
            {
                var internal = document.getElementById("inte[i]").value;   /* but its not working */
                var external = document.getElementById("exte[i]").value;
            }
        }
    </script>
    </head>
    <body>
    <?php 
        for (i = 0; i < 10; i++)
        {
            echo "<td><input type='text' name='internal' id = 'inte[$i]' width='30'/> </td>";
            echo "<td><input type='text' name='external' id = 'exte[$i]' width='30'/> </td>";
        }
        echo "<td><input type='submit' name='submit1' value='Save Marks' width='30'  onclick = 'showUser()' /></td>";
    ?>
    </body>
<html>

我正在使用上面的代码,但我无法获取不同文本框的 10 个值如何通过 java 脚本获取这些值,我想将其保存到数据库中,请帮助我

我正在使用上面的代码,但我无法获取不同文本框的 10 个值如何通过 java 脚本获取这些值,我想将其保存到数据库中,请帮助我

4

3 回答 3

1

你没有被赋予i价值getElementById

更换你的

document.getElementById("inte[i]").value;

作为

document.getElementById("inte["+i+"]").value;

使您的 for 循环为

for (var i=0; i<10; i++)
{
  var internal = document.getElementById("inte["+i+"]").value;   /* but its not working  */              
  var external = document.getElementById("exte["+i+"]").value;
}
于 2013-10-03T14:16:03.347 回答
1

这不是你想的那样:

getElementById("inte[i]")

那只是一个字符串,该i值不会被解释为整数。这个会:

getElementById("inte[" + i + "]")
于 2013-10-03T14:16:10.327 回答
0

当您的 Javascript for 循环运行时,您每次都在覆盖您的 var internal 和 external,因此在 for 循环运行后,您将只有分配给变量的最后一个值。您应该使用一个数组并将文本框的值推入其中。

var internal = new Array();
var external = new Array();

for (var i=0; i<10; i++)
{
  internal.push(document.getElementById("inte["+i+"]").value);   /* but its not working  */              
  external.push(document.getElementById("exte["+i+"]").value);
}
于 2013-10-03T14:22:55.087 回答