2011-08-27 79 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

非常感謝。 –