jQuery追加不在IE8中工作

Fal*_* S. 8 jquery internet-explorer-8

 $('#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="#">&nbsp;[X]</a></td></tr>');
            }else{
            }
            $('#send_count').val($countonlyadd);
        });
Run Code Online (Sandbox Code Playgroud)

我的代码在Internet Explorer中不起作用,我不知道为什么.所有其他浏览器都可以,但IE不是.他甚至没有添加1个文本框.

zul*_*oda 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" />
Run Code Online (Sandbox Code Playgroud)

但这个http://jsfiddle.net/NP9pG/4/将在IE兼容模式下正常工作

<table id="buttondiv">  </table>
<div id="send_count"></div>
<input type="button" id="buttonadd" value="add" />
Run Code Online (Sandbox Code Playgroud)

你的问题是你的html标记建议进行以下更改

<div id="buttondiv">
  <table id="tableData"></table>
</div>
Run Code Online (Sandbox Code Playgroud)

而是将项目附加到元素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="#">&nbsp;[X]</a></td></tr>');
Run Code Online (Sandbox Code Playgroud)

希望有所帮助