Yii CJuiAuto完成默认显示值并单击清除它

时间:2011-09-18 11:08:04

标签: autocomplete yii

我在CJuiAutoComplete之下,加载时我想在文本字段中显示“搜索”,然后点击我要清除。我尝试在选项下使用“值”,但无法使其工作。谢谢你的帮助

也尝试了

'htmlOptions'=>array('value'=>'Search',)

<?php

$this->widget('zii.widgets.jui.CJuiAutoComplete', array(
    'name'=>'test1',
   'source'=>'js: function(request, response) {
       $.ajax({
           url: "'.$this->createUrl('myAutoComplete/autoCompleate').'",
           dataType: "json",
           data: {
               term: request.term,
               brand: $("#type").val()
           },
           success: function (data) {
                   response(data);
           }
       })
    }',

     'options' => array(
                    'showAnim' => 'fold',
                    'select' => 'js:function(event, ui){ alert(ui.item.value) }',
                    'click'=>'js:function( event, ui ) {
                          alert("test");
                                    return false;
                                }',
     ),
    'htmlOptions'=>array('value'=>'Search',)
));
?>

此致

更新

直接输入'value'=&gt;'搜索'工作。

检查点击处理程序

基兰

2 个答案:

答案 0 :(得分:11)

你可以做的是给你的小部件一个id,然后你将onClick事件放在小部件的htmlOptions中,并使用JavaScript清除值。

$this->widget('zii.widgets.jui.CJuiAutoComplete', array(
    'id'  => 'test1_id',
    'name'=> 'test1',
    'source'=>'js: function(request, response) {
    $.ajax({
        url: "'.$this->createUrl('myAutoComplete/autoCompleate').'",
        dataType: "json",
        data: {
            term: request.term,
            brand: $("#type").val()
        },
        success: function (data) {
            response(data);
        }
    })
}',
'options' => array(
    'showAnim' => 'fold',
    'select' => 'js:function(event, ui){ alert(ui.item.value) }',
),
'htmlOptions' => array(
    'onClick' => 'document.getElementById("test1_id").value=""'
)
));

您无法将onClick放入options属性,因为这些是CJuiAutocomplete的jQuery选项,onClick中未定义{{1}}。

干杯

答案 1 :(得分:0)

旧帖子,但对于在这里登陆的新手来说,在Yii CAutoComplete中添加html 占位符属性非常简单。请参阅下面的代码并添加htmloptions行:

<?php $this->widget('CAutoComplete', array(
'model'=>$model,
'attribute'=>'tags',
'url'=>array('suggestTags'),
'multiple'=>true,
'htmlOptions'=>array('size'=>50,'placeholder'=>'Seperate tags with commas'),
)); ?>