0

我是 Javascripting 语言的新手。我试图构建一个应用程序,其中有一个 HTML 页面,我通过使用从中获取单个输入条目Submit button,并存储在容器(数据结构)中,dynamically show that list即字符串列表,在同一页面上

意味着每当我单击提交按钮时,该条目将自动附加到同一页面上的现有列表中。

HTML 文件:-

<html>
    <head>
        <script type = "text/javascript" src = "operation_q_2.js"></script>
    </head>
    <body>
        Enter String : <input type= "text" name = "name" id = "name_id"/>
        <button type="button"   onClick = "addString(this.input)">Submit</button>
    </body>
</html> 

JAVASCRIPT代码

var input = [];

function addString(x) {
    var s = document.getElementById("name_id").value;//x.name.value;
    input.push(input);
    var size = input.length;
    //alert(size);
    printArray(size);
}

function printArray(size){
    var div = document.createElement('div');
    for (var i = 0 ; i < size; ++i) {
        div.innerHTML += input[i] + "<br />";
    }
    document.body.appendChild(div);
    //alert(size);
}

此处将字符串存储在 中input Array,但无法在网页上显示。请需要帮助。

再告诉我一件事,给定链接上有一个代码。它也没有给出想要的答案。请帮助我克服这个问题。

<html>
<body>
    <script>
       function addValue(a) {
            var element1 = document.createElement('tr');
            var element2 = document.createElement('td');
            var text = document.createTextNode(a);
            var table = document.getElementById('t');
            element2.appendChild(text);
            element1.appendChild(element2); 
            table.tBodies(0).appendChild(element1);
       }
   </script>
   Name: <input type="text" name="a">
   <input type="button" value="Add" onClick='javascript:addValue(a.value)'>
   <table id="t" border="1">
       <tr><th>Employee Name</th></tr>
   </table>
</body>
</html>
4

1 回答 1

3

在您将项目推送到输入数组末尾的代码中,您尝试将数组而不是值推送到数组。因此,如果您的问题是您的值没有被附加到页面上,那是因为您试图将最初为空的数组附加到自身上。

所以而不是

input.push(input);

它应该是

input.push(s);

从“s”开始,您已经声明为文本字段中的值。

如果你不打算使用你传入的那个参数,我会去掉它。

参考:Javascript Array.Push()

于 2013-01-19T20:29:49.007 回答