0

我正在尝试使用 jquery html() 方法在 div 中显示外部 poll(inject a) 脚本。我也尝试过使用 .append 方法而不是 .html 但结果相同。

这是小提琴:http: //jsfiddle.net/adrianjsfiddlenetuser/6S3zg/1/

该脚本未显示在 div 中。在 Chrome 中我收到错误:“未捕获的 TypeError:无法设置属性 'innerHTML' of null”

<div id="toupdate">

</div>​

var htmlString = "<script type=\"text/javascript\" charset=\"utf-8\" src=\"http://static.polldaddy.com/p/6343621.js\"><\/script>\
    <noscript><a href=\"http://polldaddy.com/poll/6343621/\">New Poll</a><\/noscript>";

$("#toupdate").html(htmlString); 

alert(htmlString);

​</p>

4

2 回答 2

0

在本地 html 文件中尝试此代码。工作正常,可能是 JS Fiddle。不要忘记包含 jquery。我还重新格式化了您的 htmlstring 值,您不需要转义每个 \ 或 " 在您的情况下,只需使用 ' 并以 ' 结尾来制作字符串文字

<div id="toupdate">

</div>​

var htmlString = '<script type="text/javascript" charset="utf-8" src="http://static.polldaddy.com/p/6343621.js"></script>

<noscript><a href="http://polldaddy.com/poll/6343621/">New Poll</a></noscript>";

<script type="text/javascript">
$("#toupdate").html(htmlString); 

alert(htmlString);
</script>
于 2012-08-14T15:53:41.233 回答
0

我的问题是剧本。我需要等待页面加载,直到设置其 html 内容。不再抛出错误,但仍未设置内容。

http://jsfiddle.net/6S3zg/6/

于 2012-08-15T10:46:41.633 回答