0

这是我的 HTML:

...
<input type="checkbox" id="lm27" value="27" checked="checked" 
       class="charr">ismea</input>
...

当复选框被切换时,应该调用一个事件。该元素是按类选择的。但是没有调用该事件。

$(function(){
$('.charr').change(function() {
alert('Handler for .change() called.');
});

refresh_langlist();
});

如果您想尝试完整的 HTML:

<!DOCTYPE html>
<html>
<head>
</head>
<body>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js">
</script>
<script>

$('.charr').change(function() {
alert('Handler for .change() called.');
});

</script>
<input type="checkbox" id="lm27" value="27" checked="checked" 
       class="charr">ismea
</body>
</html>
4

2 回答 2

1

现在我意识到了这个问题:

总是在新的动态生成的输入之后调用选择器+事件。即使匹配,旧事件也不适用于新元素。

于 2013-06-17T21:18:22.810 回答
-1

您可以尝试更改您使用的方法来检查复选框是否被选中。这是检查复选框是否被选中的(工作)代码示例:

<html>
    <head>
        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
        <script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
        <link rel="stylesheet" href="http://code.jquery.com/ui/1.9.1/themes/base/jquery-ui.css" />

        <script type="text/javascript">
            $(document).ready(function() {

                var checked = 0;

                $('input[type="checkbox"]').click(function() {
                    var $b = $('input[type=checkbox]');
                    checked = $b.filter(':checked').length;
                    //alert('There are [' + checked + '] checked checkboxes');

                    if (checked > 2) {
                        $("input:checkbox:not(:checked)").attr('disabled','disabled');
                    }else{
                        $('input[type=checkbox]').removeAttr('disabled');
                    }
                });

            }); //END $(document).ready()

        </script>
    </head>
<body>

    <h2>Allow up to three checkboxes to be checked, then disable all checkboxes on page</h2>
    <form action="">
        <input type="checkbox" name="vehicle" value="bike">I have a bike<br>
        <input type="checkbox" name="vehicle" value="car">I have a car<br>
        <input type="checkbox" name="vehicle" value="spoon">I have a spoon<br>
        <input type="checkbox" name="vehicle" value="guitar">I have a guitar<br>
        <input type="checkbox" name="vehicle" value="boat">I have a boat<br>
        <input type="checkbox" name="vehicle" value="house">I have a house<br>

    </form>


</body>
</html>
于 2013-06-17T20:52:10.597 回答