0

我在使用一些 jquery 方法时遇到了一些问题(对于某些复选框,我希望它们在选中/未选中时触发,这样我就可以做一些事情了)。

此方法在 Chrome 和 IE 上完美运行,但不适用于最新的 FF。

jQuery(function () {
    jQuery(':checkbox').change(function () {
        var counter = jQuery('.count').text();
        var thisCheck = jQuery(this);
        if (thisCheck.is(':checked')) {
            counter++;
            //apply green color to the selected row
            jQuery(this).closest('tr').addClass('checked');
        } else {
            counter--;
            //remove green color to the selected row
            jQuery(this).closest('tr').removeClass('checked');
        }
        jQuery('.count').html(counter);

        //enable export button when there are selected emails to be exported
        if (counter > 0) {
            jQuery(".exportButton").removeAttr("disabled", "");
        } else {
            jQuery(".exportButton").attr("disabled", "disabled");
        }
    });
});

基本上它根本没有触发......即使使用 Debug 也没有捕捉到第一行(函数声明也没有其他行)。

如果我在 Firefox 上移动这个 javascript(没有function声明) jQuery(document).ready(function ($) {也可以很好地工作......

是的,我jQuery.noConflict();以前用过jQuery(document).ready(function ($) {

你知道为什么会这样吗?

4

1 回答 1

0
(function($) {
   // put your code in here
})(jQuery);

试试这个。

于 2012-06-25T09:13:45.440 回答