IE9问题:动态创建(通过innerHTML)选项按钮和复选框不起作用

Urz*_*rza 5 javascript jquery internet-explorer

我正在开发一个项目,要求我能够从页面中获取html并将其插入主网页.它完全适用于Chrome和Firefox,但在IE 9中失败.这是我使用的代码的剪切.

   if (!element.data('cache')) {

       $('#contentHolder').html('<img src="ajax_preloader.gif" width="64" height="64" class="preloader" />');

      $.get(element.data('page'), function (msg) {
         $('#contentHolder').html(msg);

         /* After page was received, add it to the cache for the current hyperlink: */
            element.data('cache', msg);
            setTimeout("checkonbox()", 100);
        });
    }
    else {
         $('#contentHolder').html(element.data('cache'));
        setTimeout("checkonbox()", 100);
    }
Run Code Online (Sandbox Code Playgroud)

正在注入的HTML是

<table style="width:400px; height: 388px; text-align: left;" align="left">
<tr>
<td><input id="Checkbox0" type="checkbox"  onclick="changebuttons();" checked="true">  
Exclusive.</input></td>
</tr>
</table>
Run Code Online (Sandbox Code Playgroud)

再加上一些选项按钮.

一切看起来都很完美,但我无法点击复选框或选项按钮.

Ive*_*nMS 0

我看不到你问题中的完整代码。但我假设您没有将代码放入初始化程序中:

    $(function () {
      // your jQuery code here.
    });
Run Code Online (Sandbox Code Playgroud)

这将帮助浏览器初始化与其元素关联的事件。尝试一下并检查是否发生任何变化。

还要尝试消除 javascript 上是否有任何错误。尝试使用可用的浏览器进行调试。我遇到过的最好的 JavaScript 调试器是FireBug,它是一个 Firefox 插件。