项目里要用到添加更多的功能。基本实现是这样的。截个图看下:
点击添加更多的时候新加一行:代码大致如下:
<tr>
<td class="label">版本号</td>
<td>
<input type="text" name="appversion" id="appversion" value=""/>
<span class="required-field">*</span>
</td>
<td class="label">MD5值</td>
<td><input type="text" name="md5" id="md5" value=""/>
<span class="required-field">*</span><input type="button" οnclick="addMore();" value="添加更多"/>
</td>
</tr>
js部分:
addMore 写道
function addMore(){ var num=document.getElementById("num").value; var newNum=(num-0)+1; document.getElementById("num").value=newNum; var obj=document.getElementById("tempDiv"); var out="<table class='form-table' cellspacing='1'><tr><td class='label'>版本号</td>"+ "<td>"+ "<input type='text' name='appversion"+num+"' id='appversion"+num+"' value=''/>"+ "<span class='required-field'>*</span>"+ "</td>"+ "<td class='label'>MD5值</td>"+ "<td><input type='text' name='md5"+num+"' id='md5"+num+"' value=''/>"+ "<span class='required-field'>*</span><input type='button' οnclick='addMore();' value='添加更多'/>"+ "</td></tr></table><br/>"; obj.innerHTML+=out; }
采用div作为容器:
div 写道
<div id="tempDiv">
</div>
</div>
在火狐,opera里是不会报错的的,但在IE里还是会报错。搜索了以下,别人说是应为IE对容器的处理不好!据说DIV,TD,SPAN可以的,但我这里DIV还是报错!怀疑网上的说法,我用的是IE6,但TD这个是可以的。我试过了!
容器换TD
TD 写道
<tr>
<td id="tempDiv" colspan="4"></td>
</tr>
<td id="tempDiv" colspan="4"></td>
</tr>
这样是没有报错的。!