这可能是一个非常简单的问题,但这使我挠头,所以我将其张贴在这里。

我有以下形式的jQuery:

if (jQuery('.SearchRegions:checked').length == 0) {

jQuery('.SearchRegions').each(function(){

        //code

    });

} else {

jQuery('.SearchRegions:checked').each(function(){

        //the same code

    });

}


显然,在每个函数中重复一大段代码似乎很荒谬。但是,当我尝试命名和移动函数时,一切似乎都崩溃了-可能是由于函数内部的范围和/或jQuery(this)问题不再引用同一对象了?

任何人都可以通过发布关于代码外观的一般想法来帮助我吗? (或者其他使它起作用的优化或重铸将不胜感激!)

最佳答案

您绝对可以定义一个函数并按名称使用它:

function someHandler(event) {
  // code code code
}

jQuery('.SearchRegions').each(someHandler);


请注意,按名称引用函数时,不要包含“()”。

10-01 16:29
查看更多