Показать сообщение отдельно
  #5 (permalink)  
Старый 30.07.2013, 15:48
Аспирант
Отправить личное сообщение для xmlns Посмотреть профиль Найти все сообщения от xmlns
 
Регистрация: 30.07.2013
Сообщений: 47

Убрать объект fields? Ну а нафига тогда настройки по-умолчанию сделали? Нет, а как в других плагинах делают, когда нужно передать объект в объекте?

Короче, промаявшись в опциями, а понял, что ничего нормально не работает из-за тупой передачи данных в методы плагина. Переписал, но все равно не работает, не передаются опции.
if(methods[method])
                return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
            else if(typeof method === 'object')
               return methods.init.apply(this, method);
            else if(!method)
                return methods.init.apply(this, {});
            else
                $.error('Метод с именем ' +  method + ' не существует для jQuery.formValidation');
Если тут сделать alert(method), то браузер покажет следующее, в зависимости от переданных параметров:

initialize('someMethod', options) //Выведит: someMethod
initialize('someMethod') //Выведит: someMethod
initialize(options) //Выведит: [Object] object

Казалось бы, вот - передаем так initialize(options) - в метод init передастся объект с настройками. А мы видим, когда сделаем alert(options) в:
init: function(options)
            {
                settings = jQuery.extend(settings, options);
                alert(options);
            ...
            }

Мы увидим undefined! Что за хрень?
Объясните и покажите кто-нибудь, как передавать названия методов и настроек в плагин?!
Ответить с цитированием