Javascript jQuery append()在IE中不起作用

Javascript jQuery append()在IE中不起作用,javascript,jquery,Javascript,Jquery,我试图使用以下命令将以下以字符串形式构建的表附加到页面上的div: var table = '<table data-custom="3963770" id="table" cellpadding="3" cellspacing="5" valign="top" width="995px" border="3" bordercolor="#83725B"> <th height="50" colspan="2">Company Nam

我试图使用以下命令将以下以字符串形式构建的表附加到页面上的div:

var table = 
'<table data-custom="3963770" id="table" cellpadding="3" cellspacing="5" 
        valign="top" width="995px" border="3" bordercolor="#83725B">

        <th height="50" colspan="2">Company Name</th>
        <th height="50" colspan="3">Esco Number</th>
        <th height="50" colspan="1">Province</th>
        <th height="50">Sector</th>
        <th height="50">Technology</th>
        <th height="50" colspan="2">Status</th>
      <tr>
        <td colspan="2">3H Envirostrategies cc</td>
        <td colspan="3">11059420</td>
        <td>Gauteng, KZN, Western Cape, Mpumalanga, Free State, 
            Eastern Cape</td>
        <td>
          <select id="mainSectors0">
            <option>Commercial</option>
          </select>
        </td>
        <td>
          <select id="mainTechs0">
            <option>Project Management</option>
          </select>
        </td>
        <td colspan="2">Active</td>
      </tr>
      <tr>
        <td style="border: none;" colspan="5">
          <div data-custom="contact_info" style="display:inline;"><u>Contact information</u></div>
        </td>
      </tr>
      <tbody data-custom="place_holder">
      </tbody>
    </table>';
它在除IE6+以外的所有浏览器中都能正常工作。有人知道解决方法吗,或者我做错了什么

提前感谢。

试试这个:

$('#table').html(table);

它使用,这在这种情况下比append更有意义。不知道为什么append不起作用,但是当您使用appentTo时,不需要将div作为jquery对象。休养

 $(table).appendTo('#table'); 


表中的HTML
变量无效。尝试使
$('#table')。追加('a')。它适用于IE。使您的HTAMl有效。

您的代码适用于我,也适用于IE:



您确定在
table='..之前使用了var关键字吗?是否有多个元素具有相同的id“table”?

Javascript对多行字符串非常敏感&我不指望它们在浏览器中被接受。。尝试使用just var table=“”在IE中是否发生任何事情?错误?@Pointy在任何IE浏览器中都不会发生任何事情。。。只是空白,@minikomi将其格式化以便于阅读,代码中的所有内容都在一行中。你还想要原件吗?在内部,几乎完全一样的事情也会发生。@Pointy:是的。。。我没有理由认为这会对appendTo起作用,但再一次,我也没有理由认为appendTo不起作用。我认为应该排除appendTo本身的问题,我们现在有了这个问题。Append将把元素添加到现有的父元素中。这将替换父级中的整个html,覆盖其中当前的内容。不一样。您可以执行$('#table').html($('#table').html()+table)@JSON-我知道
append
追加和
html
替换,但是从OP的问题来看,这似乎是他实际想要做的。具体来说,
标记行缺少
标记。@MattBH,这是一个单元格,不是一行。尝试删除您的THs以进行测试。没有尝试将div的id更改为tabledata,但仍然没有成功。@MattBH附加后(使用开发人员工具)是否检查了源代码。可能是因为某种原因,它没有被呈现出来。我已经检查了源代码,并使用了一个alert
alert($('#tabledata').html())返回了哪个blank@MattBH尝试附加其他内容。例如do
$('#tabledata').append('foo');警报($('#tabledata').html())并检查是否有效。如果是,我就不知道了。用iFrame?如果是这样,就不能使用纯$在iframe中查找某些内容。还可以尝试记录
$('#tabledata')
$(table)
etcIs是否有方法向我们展示您的站点?其他jQuery脚本在你的网站上工作吗?没有办法,其他脚本工作正常,只是在IE中,它不工作,所以我担心我们需要更多的代码(可能所有东西)或一把小提琴,错误不是由你发布的代码引起的。不知道这里有可用的PM。但如果是,你可以。@Dr.Molle让我们
$('#table').html(table);
 $(table).appendTo('#table'); 
$('#table').append(table)