2011-08-27 81 views
0

我不太懂英文; 下面的代码不会返回值。返回输出; undefined ..退货问题

(function($) { 
    $.fn.mubsisUpload = function(options){ 
     var defaults = {    
      Tabs: false, 
     }   
     var options = $.extend(defaults, options); 
     $.each(options.Tabs,function(i, name) { 
      return name.divId 
     }); 
    } 
})(jQuery); 

$(function() { 
    var event = $().mubsisUpload({ 
     Tabs : [ 
      {divId : 'j123j4j3j212emas'}, 
      {divId : 'dqwd123432dd8asx'} 
       ] 
    });  
    alert(event) 
}); 
+0

你认为它应该返回什么?请注意,您拥有的唯一返回语句是作为回调给'each'的匿名函数提供的。你根本没有在插件函数中使用return语句,但是如果我们不知道你期望它返回什么,很难告诉你如何解决它。通常我会期望它返回相同的jQuery或没有任何东西。 – tvanfosson

+0

Mert ...接受答案,如果你喜欢 –

回答

2

return那里从$.each()里面的匿名函数返回。它不会从外部函数返回。你可能想要这样的事情:

var returnValue = []; 
$.each(options.Tabs,function(i, name) { 
    returnValue.push(name.divId); 
}); 
return returnValue; 
+0

非常感谢。 –