just look at http://www.cakephp.bee.pl/ and read it :) cake use
Prototype, which have similar/same functions to JQuerry and u can't
use both of them, or u have know how to do it
http://docs.jquery.com/Using_jQuery_with_Other_Libraries

I hope this will help u :)

On 20 Sty, 18:00, Steve <[email protected]> wrote:
> On Thu, 2011-01-20 at 03:03 -0800, Ratty wrote:
> > I am trying to use JQuery with CakePHP (1.3.6) using the JS helper.
>
> > I have a bit of code that works fine with the prototype library but
> > when I change the library to JQuery, it breaks. The correct function
> > in the controller class is definately called and the database update
> > in the function happens. But when the function calls $this-
> > >render('add_success','ajax'); at the end to render 'add_success.ctp'
> > using the 'ajax.ctp' layout... nothing happens.
>
> > Is there something I need to do to make JQuery work with the JS
> > library other than those detailed in the 1.3 Cookbook ?
>
> > I hope someone can help or at least point me in the right direction.
>
> In case it helps...  Here are some code snippets of what I am trying to
> do.
>
> app_controller.php calls registers the Js Helper accross the entire
> application ( I will localise this when I get it working ). To switch to
> JQuery I use 'Js'=>array('JQuery')
>
> class AppController extends Controller {
>     ...
>     var $helpers = array( 'Form', 'Html', 'Js' => array('Prototype'));
>     ...
>
> }
>
> default.ctp layout includes the javascript library and writes any
> buffered output just before </body>. Again, I change the 'prototype' to
> 'jquery'  ( I am using jquery-1.4.4 )
>
> <head>
>         <title><?php echo $title_for_layout; ?></title>
>         <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
>         <?php echo $html->css( 'global' ); ?>
>         <?php echo $this->Html->script('prototype');?>
> </head>
> <body>
> <div id="container">
>   <div id="content">
>     <div id="content_left">
>         ...
>     </div>
>     <!-- end of content left -->
>     <div id="content_right">
>         <?php echo $content_for_layout ?>
>     </div>    
>     <!-- end of content right -->
>   </div>
>   <!-- end of content -->
>   <div id="footer">
>     ...
>   </div>
>   <!-- end of footer -->
> </div>
> <!-- end of container -->
> <?php echo $this->element('sql_dump'); ?>
> <?php echo $this->Js->writeBuffer(); ?>
> </body>
> </html>
>
> My comments controller allows comments to be added to a post. Each
> comment can also be voted on.
>
> class CommentsController extends AppController {
> ...
>   function add() {
>     if(!empty($this->data)){
>       $this->Comment->create();
>       if($this->Comment->save($this->data)) {
>         $comments=$this->Comment->find('all', array(
>           'conditions'=>array(
>             'post_id'=>$this->data['Comment']['post_id']),
>             'recursive'=>-1));
>         $this->set(compact('comments'));
>         $this->render('add_success','ajax');
>       }else{
>         $this->render('add_failure','ajax');
>       }
>     }
>   }
>
>   function vote($type=null,$id=null) {
>     if($id){
>       $votes=$this->Comment->vote($type,$id);
>       $this->set(compact('votes'));
>       $this->render('votes','ajax');
>     }
>   }
>
>    ...
>
> }
>
> add_success.ctp displays the comment just added.
> add_failure.ctp displays an error message
> votes.ctp displays the number of votes for the comment
>
> The posts view displays a post and allows comments to be added and voted
> on through Js
>
> <h1><?php echo $post['Post']['name'];?></h1>
> <hr/>
> <?php echo $bbcode->parse($post['Post']['content']); ?>
> <hr/>
> <h2>Comments</h2>
> <div id="comments">
> <?php foreach($comments as $comment): ?>
>   <div class="comment">
>     <div id="vote_<?php echo $comment['Comment']['id'];?>">
>       <div class="cast_vote">
>         <ul>
>           <li><?php echo $this->Js->link('up', array(
>                          'controller'=>'comments',
>                          'action'=>'vote', 'up',
>                          $comment['Comment']['id']),
>                          array('update'=>'vote_'.
>                                $comment['Comment']['id']));
>              ?>
>           </li>
>           <li><?php echo $this->Js->link('down',array(
>                          'controller'=>'comments',
>                          'action'=>'vote', 'down',
>                          $comment['Comment']['id']),
>                          array('update'=>'vote_'.
>                                $comment['Comment']['id']));
>               ?>
>           </li>
>         </ul>
>       </div>
>       <div class="vote">
>         <?php echo $comment['Comment']['votes'];?>
>       </div>
>     </div>
>     <p><b><?php echo $comment['Comment']['name'];?></b></p>
>     <p><?php echo $comment['Comment']['content'];?></p>
>   </div>
> <?php endforeach;?>
> <?php echo $form->create('Comment'); ?>
> <?php echo $form->input('name', array('label'=>'Enter your name'));?>
> <?php echo $form->input('content', array('label'=>'Enter your
> comment'));?>
> <?php echo
> $form->input('post_id',array('type'=>'hidden','value'=>$post['Post']['id']));?>
> <?php echo $js->submit('Add Comment', array('url' =>
> array('controller'=>'comments', 'action' => 'add' ),
> 'update'=>'comments')); ?>
> <?php echo $form->end();?>
> </div>
>
> Nothing startling here. With prototype, the vote count goes up and down
> when the link is selected and added comments are displayed... but not
> with JQuery.

-- 
Our newest site for the community: CakePHP Video Tutorials 
http://tv.cakephp.org 
Check out the new CakePHP Questions site http://ask.cakephp.org and help others 
with their CakePHP related questions.


To unsubscribe from this group, send email to
[email protected] For more options, visit this group at 
http://groups.google.com/group/cake-php

Reply via email to