如何通过Javascript动态创建表单

62

我的Aweber注册表单经常遭到垃圾邮件的骚扰。我被告知可以在页面渲染后通过JavaScript动态创建表单,或者通过单击按钮来实现。如何使用JavaScript创建和呈现表单?


1
创建动态表单是什么意思? - Mohammad Faisal
6
我不确定为什么这篇文章会被那么多人踩或关闭。通过JavaScript生成动态表单意味着要构建DOM,而不是通过HTML来提供它。 - recursive
15
他的意思是在页面呈现后创建一个表单。为什么会关闭这个问题? - Sparkup
我想知道,是否有类似于(PHP) Drupal表单API的库? - Ideogram
1个回答

141

以下是示例内容:

在body标签后添加此代码:

这只是一个大致的草图,您需要根据自己的需求进行修改。

<script>
var f = document.createElement("form");
f.setAttribute('method',"post");
f.setAttribute('action',"submit.php");

var i = document.createElement("input"); //input element, text
i.setAttribute('type',"text");
i.setAttribute('name',"username");

var s = document.createElement("input"); //input element, Submit button
s.setAttribute('type',"submit");
s.setAttribute('value',"Submit");

f.appendChild(i);
f.appendChild(s);

//and some more input elements here
//and dont forget to add a submit button

document.getElementsByTagName('body')[0].appendChild(f);

</script>

你如何在提交按钮旁边添加一个按钮来删除相应的表单? - Jeremy
由于某些原因,这段代码的提交按钮在IE Edge或早期版本的IE中无法正常工作。不知道为什么会出现这种情况。 - peter jalton

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接