Как подавить эту ошибку JavaScript: Исключение: Ошибка типа: $ ("j2t-temp-div"). Down (". J2t_ajax_message") не определена? - PullRequest
2 голосов
/ 28 февраля 2012

Чтобы воспроизвести эту ошибку, пожалуйста, перейдите на здесь .

Выберите «Цвет» и «Размер» и нажмите «Добавить в корзину», когда «загрузка ...»появится диалоговое окно И, прежде чем оно превратится в диалоговое окно «добавлено в корзину», щелкните в любом месте оттенка, чтобы закрыть диалоговое окно, а затем нажмите любую ссылку на странице так быстро, как сможете.

Если выдостаточно быстрые, вы можете воспроизвести эту оповещенную ошибку:

Exception : TypeError: $("j2t-temp-div").down(".j2t_ajax_message") is undefined

(Firefox 9)

Exception : TypeError: Cannot read property 'innerHTML' of undefined

(Chrome 17)

Нет ошибки оповещения для IE 8.

Мой вопрос: как мне устранить эту ошибку?Я случайно наступил на это несколько раз, и я уверен, что мои пользователи сделают это также случайно.И на производственном сайте это выглядит не очень красиво.

Есть ли способ отключить это исключение при сохранении функции добавления AJAX в корзину?

Любая идея будет оценена.Спасибо!

Ответы [ 2 ]

3 голосов
/ 28 февраля 2012

Чтобы подавить это, вы можете использовать typeof:

if (typeof variableHere != 'undefined'){
  // your further code
}

Например, если вы делаете:

alert(someVar);

, где someVar не определено ранее, вы получите:

someVar is not defined

Но когда вы делаете:

if (typeof someVar == 'undefined'){ ... }

Это подавит ошибку.


Таким образом, вы должны выяснить, какая переменная вызывает эту ошибку, после чего вам нужно использовать typeof check для подавления сообщения.

0 голосов
/ 28 февраля 2012

выглядит для меня $("j2t-temp-div") отсутствует # или ..Это зависит от того, является ли j2t-temp-div значением id для div или class.(Я некоторое время не использую jquery, поэтому что-то можно изменить ...)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...