我正在使用CAutoComplete来选择多个逗号分隔值。现在我只能传递选定的值,我还需要在提交表单时传递所选值的id。 能否请你帮我发送id作为数组或逗号分隔提交。
在我的表格中我正在使用:
<?php
$this->widget('CAutoComplete', array(
'model' => $model,
'attribute' => 'skills',
'url' => array('serviceRequest/Suggest'),
'multiple' => true,
'htmlOptions' => array('size' => 34),
));
?>
控制器:
public function actionSuggest()
{
if (isset($_GET['q']) && ($keyword = trim($_GET['q'])) !== '')
{
$tags = Skills::model()->suggest($keyword);
if ($tags !== array())
echo implode("\n", $tags);
}
}
型号:
public function suggest($keyword,$limit=20)
{
$tags=$this->findAll(array(
'condition'=>'skills LIKE :keyword',
// 'order'=>'Name',
'limit'=>$limit,
'params'=>array(
':keyword'=>'%'.strtr($keyword,array('%'=>'\%', '_'=>'\_', '\\'=>'\\\\')).'%',
),
));
$names=array();
foreach($tags as $tag)
$names[]=$tag->skills;
return $names;
}
答案 0 :(得分:0)
您可以通过包含选项数组来传递JUI自动完成小部件支持的任何选项:
$this->widget('CAutoComplete', array(
// your other settings here
'options' => array(
'select' => new CJavaScriptExpression('function(e, ui) { alert("hi"); }')
),
));
请阅读此处了解更多信息:http://www.yiiframework.com/doc/api/1.1/CAutoComplete