我有一个搜索页面,用户可以在其中键入搜索框,也可以使用按字母顺序排列的列表来搜索他们要查找的记录。例如,他们点击"a",所有以字母"a"开头的记录都会出现。
我还希望每个记录都有多个标签,然后我希望能够根据选择的标签来过滤记录,最好是使用复选框。
例如,标签可能是彩色的,记录代表鞋子。会有蓝色、黄色、黑色、棕色等复选框。起初,所有颜色都会显示出来,但如果用户点击棕色,那么除了棕色鞋子之外,其他颜色都会消失。
我正在使用CakePHP
// cakephp view
echo $this->Form->checkbox("Model.color.0", array("value"=>"green"));
// cakephp controller
$filtered = $this->Model->find("all", array(
"conditions"=> array(
// ...
) + $this->data
));
//or
$this->paginate['conditions'] = array(
//...
) + $this->data;
$filtered=$this->paginate();
jQuery UI自动完成插件就是您想要的。
你可以在这里试用演示-http://docs.jquery.com/UI/Autocomplete#demo
在演示中,他们使用了一个静态本地选项。但你也可以使用远程URL,它会根据你的搜索词生成一个特定的列表。查看各种选项。
请尝试一下,如果你遇到问题(我相信你会的),请在这里再次询问。