2013-05-22 3 views
2

на консоли Chrome дает мне эту ошибку:Прототип Невозможно вызвать метод «получить» неопределенной

Uncaught TypeError: Cannot call method 'get' of undefined 

я ищу эту линию и нашел это:

function _createResponder(element, eventName, handler) { 
    var registry = Element.retrieve(element, 'prototype_event_registry'); 

    if (Object.isUndefined(registry)) { 
     CACHE.push(element); 
     registry = Element.retrieve(element, 'prototype_event_registry', $H()); 
    } 
    var respondersForEvent = registry.get(eventName); 

Uncaught TypeError: Невозможно вызвать метод «получить» неопределенной

if (Object.isUndefined(respondersForEvent)) { 
     respondersForEvent = []; 
     registry.set(eventName, respondersForEvent); 
    } 
+0

Вы не проверяете, является ли реестр еще неопределенным. Вторая попытка восстановить() реестр, похоже, тоже не работает. – Chris

+0

Посмотрите эту тему: http://www.magentocommerce.com/boards/br/errors.php/viewthread/269153/ его тот же случай, но я не знаю, как его решить .. –

+0

Я уже комментирую весь код, который рекомендует на посту, который я уже говорил, это код, который я отключил с помощью : http://forum.azmagento.com/magento-folder-structure/magento-app-files-app-design-frontend-base-default-template -catalogsearch-formminiphtml-10810.html и по-прежнему ошибка –

ответ

0

Это, кажется, происходит, когда Элемент «null» передается функции привязки события. Попробуйте добавить следующее перед второй строкой (вар реестр = ...)

if (element === null) return; 

Это в основном предотвратить дальнейшую обработку в рамках этой функции, которая не должна быть необходимой, когда элемент является нулевым.

Я не нашел никаких проблем с этим в Magento, но, пожалуйста, дайте мне знать, если есть какие-либо проблемы с использованием этого исправления.

Смежные вопросы