如何通过javascript从多个不同的文本框中获取价值

时间:2013-10-03 14:13:27

标签: javascript

<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脚本获取这些值,我想将它保存到数据库,请帮助我

3 个答案:

答案 0 :(得分: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;
}

答案 1 :(得分:1)

这不是你想的那样:

getElementById("inte[i]")

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

getElementById("inte[" + i + "]")

答案 2 :(得分:0)

当您的Javascript for循环运行时,您每次都会覆盖var内部和外部,因此在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);
}