$('#buttonadd').click(function(){
if ($counter < 10)
{
$counter++;
$countonlyadd++;
$('#buttondiv').append('<tr><td><select class="combo" name="combo'+$counter+'" style="width: 60px;" size="1"><option>UND</option><option>OHNE</option><option>ODER</option></select></td><td><input type="text" name="textbox'+$counter+'" class="textbox" value="" /><a id="removetxt" class="removetxt" style="text-decoration: none;line-height: 3;" href="#"> [X]</a></td></tr>');
}else{
}
$('#send_count').val($countonlyadd);
});
我的代码在Internet Explorer中不起作用,我不知道为什么。所有其他浏览器都可以,但IE不是。他甚至没有添加1个文本框。
答案 0 :(得分:8)
你的问题是IE兼容模式。这在IE9 http://jsfiddle.net/NP9pG/3/和Firefox中运行良好,但是当你切换到IE兼容模式时,它不起作用。
<div id="buttondiv"> </div>
<div id="send_count"></div>
<input type="button" id="buttonadd" value="add" />
但是这个http://jsfiddle.net/NP9pG/4/在IE兼容模式下可以正常工作
<table id="buttondiv"> </table>
<div id="send_count"></div>
<input type="button" id="buttonadd" value="add" />
你的问题是你的html标记建议进行以下更改
<div id="buttondiv">
<table id="tableData"></table>
</div>
而是将项目附加到table
而不是div
元素
因此js代码:
$('#tableData').append('<tr><td><select class="combo" name="combo'+$counter+'" style="width: 60px;" size="1"><option>UND</option><option>OHNE</option><option>ODER</option></select></td><td><input type="text" name="textbox'+$counter+'" class="textbox" value="" /><a id="removetxt" class="removetxt" style="text-decoration: none;line-height: 3;" href="#"> [X]</a></td></tr>');
希望有所帮助
答案 1 :(得分:4)
您似乎直接在任何浏览器中添加了tr
,而这些html不是有效的HTML。其他浏览器不会喊,但IE会。试试这个。
正在使用 demo
标记更改
<div id="buttondiv">
<table></table>
</div>
JS更改
$('#buttonadd').click(function(){
if ($counter < 10)
{
$counter++;
$countonlyadd++;
$('#buttondiv table').append('<tr><td><select class="combo" name="combo'+$counter+'" style="width: 60px;" size="1"><option>UND</option><option>OHNE</option><option>ODER</option></select></td><td><input type="text" name="textbox'+$counter+'" class="textbox" value="" /><a id="removetxt" class="removetxt" style="text-decoration: none;line-height: 3;" href="#"> [X]</a></td></tr>');
}else{
}
$('#send_count').val($countonlyadd);
});
答案 2 :(得分:3)
看来你正在向div添加一个TR,这可能是你的问题。您应该将它附加到TABLE的TBODY中。
答案 3 :(得分:0)
问题是:
table
&gt;包装在#buttondiv?想想这些问题,如果结果是“不”,那就是问题
如果你有&lt; table
&gt;包装,改变
$('#buttondiv').
到
$('#buttondiv table').
答案 4 :(得分:0)
如果你首先创建元素,也许它会有所帮助。所以为你的行,列,文本框等创建一个对象。而不是将它们相互追加。最后将行附加到div。除此之外,将一行添加到div而不是表格有点奇怪......