0
我設置了jQuery用戶界面自動完成對CakePHP的網站,覺得我失去了一些東西真的很明顯,但它幾乎工作...jQuery用戶界面自動完成+ CakePHP的
所以簡單的jQuery代碼是:
$(function() {
$("#SearchQuery").autocomplete({
source: "<?= $session->base ?>/search/complete",
minLength: 2
});
});
這連接到我的搜索控制器,搜索控制器從數據庫中返回項目。我能得到的結果回來,如果我不嘗試實際看看「術語」(什麼已經輸入所以,在我的控制器工作的:
function complete(){
$entries = $this->Entry->find('list');
$this->set('entries', $entries);
}
它返回的JSON,並落下從輸入像它應該,但它從來沒有縮小基於什麼已經輸入的結果我想,這應該縮小的結果:。
function complete($query = null){
$entries = $this->Entry->find('list',
array('conditions' => array('title LIKE' => '%'.$query.'%')));
$this->set('entries', $entries);
}
但有了這個代碼,沒有什麼是永遠回我在做什麼錯?
PS人誰發現這個問題,並無法將結果返回到自動完成功能,請確保您返回格式正確的JSON結果:http://www.pagebakers.nl/2007/06/05/using-json-in-cakephp-12/
它的面世。使用:$ this-> params ['url'] ['term']; :-) – 2010-09-17 06:55:45
是的。這是我不確定使用'$ this-> params ['url']'和'$ _GET'的好處之一。不知何故,它更安全嗎? – bjudson 2010-09-17 13:31:45
如果這只是查詢下拉菜單,我不認爲安全問題太多。但如果它涉及到你,你可以在採取行動之前用標準php清理這個術語。 – Leo 2010-09-18 09:53:44