CakePHP AJAX помощник проблема - PullRequest
0 голосов
/ 28 мая 2011

В настоящее время я использую помощник ajax, найденный в http://www.cakephp.bee.pl/

У меня есть аккордеон, который я хотел бы обновить, используя $ this-> ajax

вот код кнопки отправки формы ajax

    <?php echo $ajax->submit('Submit', array(

'url'=> array(
'controller'=>'qnotes', 
'action'=>'add'
 ),

 'update'=>'divleft',
 'position'=>'html',
 'before'=>'$("accordion").accordion("disable");alert("before");',
 'after'=>'$("#accordion").accordion("destroy").accordion({autoHeight: false, collapsible: false , active: false, header: "h3"});alert(response.requestText)',
'complete'=>'$("#accordion").accordion("destroy").accordion({autoHeight: false, collapsible: false , active: false, header: "h3"});',
 'success'=>'$("#dialog1").dialog("close");'

    ));  
?>

здесь формат аккордеона

<div id="divleft">
 <div id="accordion">
  <h3><a href ></h3>
  <ul>
    <li>item 2</li>
    <li>itejm 3</li>
 </ul>
 </div>
</div>

Проблема.

Невозможно обновить аккордеон без потери функциональности аккордеона, и если аккордеон обновляется, он теряет свой стиль аккордеона.

Что-то не так в моем коде

1 Ответ

0 голосов
/ 28 мая 2011

Первое, что я хочу спросить, это как создать элемент аккордеона? Используете ли вы класс AjaxHelper или просто метод jQuery?

После отправки формы вы используете синтаксис jQuery UI для уничтожения и воссоздания нового аккордеона. Но чтобы создать его с помощью Helper, вы должны использовать объект $ ajax и его функции. Есть ли способ, чтобы AjaxHelper изменил определение пользовательского интерфейса и каким-то образом обернул его?

...