1

我在使用 IE 8 时遇到了问题。因为我的代码可以在 mozila、chrome 甚至 IE 9 等主流浏览器上成功运行。但我无法触发 IE 8 中复选框的 onclick 事件。我的代码示例是,

function checkboxcheck(index){
    alert('select');

}

在这里,我通过替换复选框使用了不同的图像。我的 HTML 代码是,

<input type='checkbox' class='rating'  id="sample"    onclick='checkboxcheck(parameters)'  />
                    <label for="sample"></label>

CSS:

.rating {
    display:none;
}
input[type="checkbox"] + label {
    width: 15px;
    height: 15px;
    display: inline-block;
    background-image:url('../images/white_small.png') ;
}

input[type="checkbox"] + label:hover {
    width: 15px;
    height: 15px;
    display: inline-block;
    background-image:url('../images/golden_small.png') ;

}

input[type=checkbox]:checked + label {
    width: 15px;
    height: 15px;
    display: inline-block;
    background-image:url('../images/golden_small.png') ;
}

我的问题是当我单击其他图像形式的复选框时,不会触发 checkboxcheck(index) 功能。

如果我删除class属性,则会触发 onclick 函数
我不知道为什么在为复选框放置类属性时不调用 onclick

请指导我。提前谢谢......

4

2 回答 2

0

我在我的应用程序中遇到了同样的问题。我刚刚更改了文档类型并且它起作用了......试试这个

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
于 2013-04-23T05:22:43.947 回答
0

你可以尝试这样的事情:

您可以在 javascript 文件中分配它,而不是在 html 中调用该方法。例如使用 jQuery:

HTML

<input type='checkbox'  id="sample"   class="myclass"  />
<label for="sample"></label>

jQuery

$('.myclass').click(checkboxcheck(parameters));

我不知道这段代码是否能解决您的问题,但也许可以

祝你好运

于 2013-04-19T11:55:41.287 回答