JQuery UI Click call работает на локальном компьютере, но не при публикации на сервере - также с использованием CakePHP - PullRequest
0 голосов
/ 27 октября 2010

У меня есть некоторый javascript, который выглядит следующим образом:

$('.resultitem').click(function(event){
     alert('check this gets called');                      
     location.href='viewinfo/'+$(this).attr('rel');
});

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

ОБНОВЛЕНИЕ: Как упоминалось ниже, это было вызвано ошибкой сценария выше.Во время отладки с помощью firebug я заметил на сервере, что во вкладке net файл GET jquery.cookie.js завершается с ошибкой с кодом 406.

Мне пришлось переименовать в jquerycookie.js, чтобы этот конкретный хостинг-провайдер был доволен.Я провел немного больше исследований, и это могло произойти из-за следующего:

"что-нибудь с .cookie. В нем выдает предупреждение Apache mod_security, останавливая обслуживание файла, фактически делая его неспособным работать"

1 Ответ

0 голосов
/ 04 ноября 2010

Включаете ли вы файлы JavaScript с помощью HTML-помощника Cake?Например:

echo $this->Html->script(array('jquery-1.4.3.min'));

Обратите внимание, что в соответствии с соглашениями Cake, я остановил расширение файла .js.По моему опыту, это создало проблемы, когда рабочий сервер считает, что .min является расширением файла, и пытается загрузить несуществующий файл с именем jquery-1.4.3.min, что означает, что jQuery не загружен, и, следовательно, опубликованный вами фрагмент не удастся..

Я не уверен, что именно так вы загружаете свои скрипты, но в целом безопаснее использовать полное имя файла, например:

echo $this->Html->script(array('jquery-1.4.3.min.js'));

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