Торт PHP JS Helper - PullRequest
       4

Торт PHP JS Helper

1 голос
/ 09 января 2012

Я изучаю cakephp 2.0 и пытаюсь работать на Ajax. Я успешно создал форму, которая работает с ajax. Теперь мне нужно поработать над ссылками. Что я хочу сделать, так это перейти в div, нажав на ссылку.

  <?php $this->Js->get('#Edit-link')->event('click',$this->Js->get('#sending')->effect('fadeIn'));?>

Этот код не работает и генерирует ниже javascript

    $("#sending").bind("click", function (event) {$("#sending").fadeIn();
return false;});
$("#sending").bind("click", function (event) {$("#sending").fadeIn();
return false;});
$("#sending").bind("click", function (event) {$("#sending").fadeIn();
return false;});
$("#sending").bind("click", function (event) {$("#sending").fadeIn();
return false;});

1 Ответ

1 голос
/ 09 января 2012

Весь код, который вы разместили, кажется правильным.JsHelper должен вывести включенный вами скрипт jQuery, за исключением того факта, что он печатается 4 раза, что, вероятно, связано со вторым вызовом $this->Js->get() внутри первой функции.

Что не работает точно?Правильно ли загружена библиотека jQuery согласно документации ?

Этот скрипт ожидает наличия ссылки с идентификатором #sending.Это также не препятствует нормальному поведению ссылки (после URL в атрибуте href), которая перезагружает страницу и останавливает любые эффекты или действия JavaScript для правильного выполнения.Обычно вы должны включить event.preventDefault() в функцию jQuery, чтобы предотвратить это ( см. Документацию здесь ).Не могли бы вы предоставить полный код для вашего просмотра?

Кроме того, возможно, было бы более целесообразно писать сценарии такого типа непосредственно в синтаксисе jQuery, делая это способом Cake, добавляя больше абстракции в этом случае, что может быть ненужным для небольших проектов.

...