2012-05-21 2 views
2

This является одной из страниц.

Когда вы нажимаете на значок ошибки в нижней части таблицы, все больше отображаются в таблице. Затем, когда вы нажимаете на значок в таблице, появляется всплывающее окно qtip и захватывает код через функцию jquery $ .post. Я тестировал его в IE, Chrome, Opera и Firefox, и он отлично работает. В сафари на ipod/ipad это не так, и тогда консоль разработчика на устройстве не очень помогает. Одна вещь, которая появляется в нем (дважды) является:


 
JavaScript: Error 
undefined 
TypeError: 'undefined' is not a function 

Кто знает, что может быть запуск этого и, если это касается того, почему Ajax не работает? Включенный скрипт относится ко всему этому: here.

Спасибо.


Edit: Это часть кода, который я в настоящее время изменен, чтобы исправить это. Он ушел из

 
$.post("ajax_requests.php?action=get_error_code", {data:$(this.targetThis).attr('data-errorData')}, function(data) { 

    $(this.qtipThis).find('.code').html(data); 

    $(this.qtipThis).find('.email .link').attr('onclick', ''); 
    $(this.qtipThis).find('.email .link').attr('href', 'mailto:'+errorReportEmail+'?subject=Website Table Error (Error id: '+data+')'); 

}.bind(this)); 

этого (благодаря @ raina77ow «s ответ)

 
    var self = this; 
    $.post("ajax_requests.php?action=get_error_code", {data:$(this.targetThis).attr('data-errorData')}, function(data) { 

    $(self.qtipThis).find('.code').html(data); 

    $(self.qtipThis).find('.email .link').attr('onclick', ''); 
    $(self.qtipThis).find('.email .link').attr('href', 'mailto:'+errorReportEmail+'?subject=Website Table Error (Error id: '+data+')'); 
}); 
+0

У меня была проблема с мини-версией jquery на мобильных устройствах один раз (я думаю, что эта ошибка возникла аналогично). попробуйте изменить его на полный, чтобы узнать, исправляет ли он это. – clem

+0

Я изменился, я боюсь, что он все еще бросает ту же ошибку :( –

ответ

1

Если проблема связана с $.post, может быть это из-за какого-то изменения this issue? Это не о batman, а о методе Function.bind().

+1

Вот и все! Сейчас это работает. Я изменил его так, что вместо '.bind' он создает' var self = this' и использует это Вместо этого. Спасибо :) –

+0

Также исправлена ​​и другая проблема, когда ссылка «нажмите здесь» на первом qtip не работала. –

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