我有一些HTML代码
<div class="filters-widget bordered">
<span class="checkbox" style="background-position: 0px 0px; "></span><input type="checkbox" id="sidecity-control-name-2" name="sidecity" class="styled" value="Brisbane">
<label for="sidecity-control-name-2">Brisbane (109)</label>
</div>
我有这个js代码
$(document).ready(
function () {
registerClick();
function formSubmit() {
this.document.getElementById("filters-form").submit();
}
function registerClick() {
$('.filters-widget.bordered input[type="checkbox"]').bind("click", function () {
formSubmit();
});
$('.filters-widget.bordered span[class="checkbox"]').live("click", function () {
formSubmit();
});
$('.filters-widget.bordered label').bind("mousedown", function () {
var id = $(this).prop("for");
var span = document.getElementById(id).previousSibling;
Custom.pushed.call(span);
});
};
});
我使用jQuery 1.6.1。 在IE8中,这部分代码不起作用
$('.filters-widget.bordered input[type="checkbox"]').bind("click", function () {
formSubmit();
});
不调用该函数。 如何解决这个问题?
答案 0 :(得分:1)
复选框没有点击事件。这与jQuery没什么关系。
您可以使用click
代替change
:
$('.filters-widget.bordered input[type="checkbox"]').bind("change", function () {
formSubmit();
});
参见jQuery参考:
http://api.jquery.com/change/