2014-09-02 84 views
0

jQuery函数返回我已经把它使用一个干净的框架,一些JavaScript文件,这里就是它的格式:未定义回调

var functionLibrary = { 

    validateFields:function(inputArray, result) { 
     $.each(inputArray, function(index, listItem) { 
      if (!$.trim($("#" + listItem).val()).length) { 
       return "empty"; 
      } 
     }); 
    } 

} 

这里我将数据传递到这样的功能,却得到了undefined验证时回应:

var Validation = functionLibrary.validateFields(['amount', 'ppemail']); 
console.log(Validation); 

为什么这样的功能显示在控制台日志undefined当它应该返回empty

+0

了'validateFields'不返回任何东西......每个回调返回值 – 2014-09-02 12:31:21

+0

的'each'没有返回的' validateFields'。尝试在'validateFields'结束之前放置'console.log'来检查函数是否还没有返回“空”。 – bzeaman 2014-09-02 12:33:34

回答

2

不必返回从validateFields方法什么...

var functionLibrary = { 

    validateFields: function (inputArray, result) { 
     var value; 
     $.each(inputArray, function (index, listItem) { 
      if (!$.trim($("#" + listItem).val()).length) { 
       //set the validity status 
       value = "empty"; 
       //stop further execution of the loop 
       return false; 
      } 
     }); 
     //return the value from validateFields 
     return value; 
    } 

}