cakePHP动态适应输入JqueryUI建议如何?

cakePHP动态适应输入JqueryUI建议如何?,jquery,ajax,cakephp,Jquery,Ajax,Cakephp,我正在尝试输入建议。这在它的自我是没有什么特别的JqueryUI能够非常开箱 我遇到麻烦的地方是向jqueryUI提供了一个您需要提供的可能建议列表。。。我用的桌子很大,可以作为一个整体倒进视图中。。。但是当用户开始在字段中输入并给他剩下的前100条建议时,我不知道如何从中获取值。。。 有了这个,我希望减少数据库的负载,加快页面的加载速度,因为CakePHP没有在用户每次需要表单时都将整个表打包到视图中 到目前为止,我拥有的代码:(非常感谢每一只援助之手!thx…) 控制器: <?php

我正在尝试输入建议。这在它的自我是没有什么特别的JqueryUI能够非常开箱

我遇到麻烦的地方是向jqueryUI提供了一个您需要提供的可能建议列表。。。我用的桌子很大,可以作为一个整体倒进视图中。。。但是当用户开始在字段中输入并给他剩下的前100条建议时,我不知道如何从中获取值。。。 有了这个,我希望减少数据库的负载,加快页面的加载速度,因为CakePHP没有在用户每次需要表单时都将整个表打包到视图中

到目前为止,我拥有的代码:(非常感谢每一只援助之手!thx…) 控制器:

<?php
App::uses('AppController', 'Controller');
class LocationsManagerController extends AppController {
public $helpers = array('Js');
public $components = array('RequestHandler');
public function index() {

}

public function updateSuggestions() {
    /*
     * place passed Value into $locationName
     */
    $this -> loadModel('Location');
    if ($this -> RequestHandler -> isAjax()) {
        $this -> Location -> find('list',array(
            'limit'=>'100',
            'conditions' => array('Location.name' => $locationName),
        ));
        $this->render('suggestions');
    }
    /*
     * tell JqueryUI to update it's suggestion Array...
     */

}

当您使用JuerUI时,您可以使用自动完成:


然后,您必须在控制器中创建一个操作,该操作返回您的建议的json列表。

您需要一个计数器来计算前3或4个字符,然后从数据库中检索?
<div id="suggestions">
<!--
array of possible Options...
-->
</div>
<?php
echo $this -> Html -> script('jqueryUI', FALSE);
echo $this -> Form -> create('locationsmanager');
echo $this -> Form -> input('Location', array('id' => 'location'));
echo $this -> Form -> submit('Send');
$updateSuggestions = $this -> Js -> get('#location') -> event(
#@formatter:off ; 
'change',
$this->Js->request(
    array(
        'action' => 'foo', 
        'data' => $form, 
    ),
    array(
        'async' => true, 
        'update' => '#suggestions'
    )
)
#@formatter:on ;
);
?>