0

我的代码有问题吗?

    <script>
        function add(){
            /* Get your form */
        form = document.getElementById("test");
            /* Create your input element */
        input = document.createElement("input");
        input.type="text";
        input.name="array['artists']";
            /* Append to form */
        form.appendChild(input);
        alert("done");
        }
    </script>

<table>
<tr>
 <td align="right">Artist/s:</td>
 <td><form id="test" enctype="multipart/data-form" method="post">
 <input type="text" name="artists"/>
 <input type="button" onclick='javascript: add()'/></form></td>
</tr>
<tr>
 <td colspan="2"><input type="submit" value="Submit"></td>
</tr>
</table>

我试图在另一个文本框下方添加另一个文本框,但什么也没发生。我应该怎么办?

4

4 回答 4

0

您的 HTML 格式不正确。这就是为什么在“添加”按钮之后添加输入框(TextBox)而不是您想要的下方的原因。

您可以尝试以下代码:

var table = document.getElementById("tableAddRows");
var row = document.createElement("tr");
var td1 = document.createElement("td");
var td2 = document.createElement("td");
td2.appendChild(input);
row.appendChild(td1);
row.appendChild(td2);
table.appendChild(row);

向表中添加一个 id(在示例“tableAddRows”中)。

另外,我在另一个表中添加了提交按钮,就像这样(有更简洁的解决方案):

<table>
<tr>
<td colspan="2"><input type="submit" value="Submit"></td>
</tr>
</table>    

还要将表单元素放在两个表周围。

我还建议使用JSRenderjQuery 模板来实现您的目的。

这是示例代码,如果您仍然想弄清楚的话。

于 2012-10-19T22:14:08.827 回答
0

也适用于我。尝试在另一个浏览器中测试..

于 2012-10-19T21:44:41.067 回答
0

似乎正在工作 -小提琴

add()我只是在 a内部调用,setTimeout所以它会在页面加载后执行一秒钟。

你只是错过了电话add()吗?

编辑:我最初没有看到 onclick 绑定。新的工作小提琴2

于 2012-10-19T21:10:04.253 回答
0

似乎也为我工作。

当我第一次将它放入 html 文件时,Internet Explorer 不允许我运行 javascript,因为 html 文件是我计算机的本地文件。如果您正在使用其他浏览器,请尝试使用其他浏览器。或者,如果是这种情况,只需单击 yest 以在 IE 中允许它。

于 2012-10-19T21:14:29.287 回答