javascript动态添加一组input

时间:2023-03-09 07:46:48
javascript动态添加一组input

2013年12月18日 20:56:29

场景:

批量添加 友情链接 功能

每个友情链接记录有3个字段:名字(name),超链接(url),排序(order)

要求每次点击"添加"按钮,就一次性生成3个input框,不同的name值可以存储上边3个元素

可以在提交前多次点击,也就是生成多组友情链接信息,一并提交又不能相互覆盖

html

 <div id="friendlink" currentindex=""></div>
<input type="button" onclick="addlink();" value="添加" />

js

 <script type="text/javascript">
function addlink(){
var x = 1;
var linkdiv = document.getElementById("friendlink");
if (linkdiv.attributes.currentindex.value) {
var tmp = linkdiv.attributes.currentindex.value;
x = parseInt(tmp) + 1;
}
linkdiv.setAttribute('currentindex', x); var yname = 'link[js'+x+'][name]';
var yurl = 'link[js'+x+'][url]';
var yorder = 'link[js'+x+'][order]'; var input1 = document.createElement('input');
input1.setAttribute('type', 'text');
input1.setAttribute('name', yname); var input2 = document.createElement('input');
input2.setAttribute('type', 'text');
input2.setAttribute('name', yurl); var input3 = document.createElement('input');
input3.setAttribute('type', 'text');
input3.setAttribute('name', yorder); var br = document.createElement('br'); linkdiv.insertBefore(input1,null);
linkdiv.insertBefore(input2,null);
linkdiv.insertBefore(input3,null);
linkdiv.insertBefore(br,null);
}
</script>

火狐下测试成功,其他浏览器没有测试

2014年5月22日 09:57:04

获得自定义属性:

linkdiv.getAttribute();

linkdiv.setAttribute();