2011-08-03 77 views
0

我想讓CakePHP與JQuery一起工作。 下面是我已經到位的div,我試圖做的只是簡單的提醒(「CLICKED!」);每當下面的鏈接被點擊。CakePHP和JQuery集成

<?php echo $this->Html->link('Link Click Me', '#', array('onclick'=>'return false;', 'id'=>'divId', 'class'=>'divClass')); ?> 

我在我的項目中「根目錄」文件夾中的「JS」目錄下面的文件「jQuery的1.5.2.js」和「js_file.js」,和jQuery是工作,但我似乎不能得到這個特定的功能工作。

有什麼建議?

代碼的jQuery:

$(document).ready(function(){ 

    $('.divClass').click(function(){ 
     alert("TESTING!"); 
    }); 

}); 

而且本所認爲:

<?php echo $this->Html->link('Link Click Me', '#', array( 'id'=>'divId', 'class'=>'divClass')); ?> 

我仍然在尋找一個答案,這個問題你們....

+0

你有沒有嘗試刪除'的onclick =「返回false;」'從鏈接?它可能會干擾jQuery點擊事件。 – JJJ

+0

嗨,是的,我刪除了上面提到的代碼,但沒有區別。我似乎無法針對cakephp中的任何元素(div,span,links等)。你還有其它的想法嗎?? –

+0

你說「jQuery正在工作」 - 你怎麼知道你是否不能瞄準任何元素? – JJJ

回答

2

安置自己的jQuery代碼提示。

您可能需要使用bind()而不是click()。

刪除onclick =「return false;」 from the link and add return false;到jQuery點擊函數的末尾。

+2

我可能會建議使用'preventDefault()'而不是返回false,但事件處理程序中的位置肯定是要走的路。 –

+0

我沒有聽說過!不錯的一個:) – Calum

0

這個問題似乎是事實,我沒有包含這些在視圖的頂部:

<!-- IMPORTS: --> 
<?php $this->Html->css("css_file", null, array("inline"=>false)); ?> 
<?php echo $html->script("jquery-1.5.2"); ?> 
<?php echo $html->script("js_file"); ?> 
+1

使用'$ this-> Html-> script()',不要混合搭配。另外,你在CakePHP中看到過JS助手嗎? http://book.cakephp.org/view/1592/Js – Dunhamzzz