1

使用Yii PHP 框架。当您在 stackoverflow 上提出问题时,当您键入标题时,会出现一个名为“可能已经有您答案的问题”的列表。我想创建类似类型的字段,以便当用户输入企业名称时,我可以在我的系统中显示类似的企业名称。它不一定需要像 stackoverflow 的模型那样复杂。一个简单的字母搜索应该没问题。

请记住,与正常的自动完成不同,这种“自动完成”实际上不会填写相关字段,而是作为一种信息工具来通知用户可能已经存在的数据。

我在想Yii CJuiAutoComplete 小部件是适合这项工作的工具,但我如何将自动完成与输入字段分离?

4

1 回答 1

1

CJuiAutoComplete 绝对是正确的工具,要在选择建议的值时禁用自动填充,您将不得不更改 jQueryUI 自动完成的行为,它的selectevent和它的focusevent

select当一个建议项被点击时触发该事件,focus当一个建议项被按键(向上、向下箭头键)导航到时触发该事件。

因此,要更改更新文本字段的默认行为,您可以通过从回调中返回 false 来取消这些事件:

$this->widget('zii.widgets.jui.CJuiAutoComplete', array(
    // other options
    // additional javascript options for the autocomplete plugin
    'options'=>array(
        'select'=>'js:function( event, ui ) {
            return false;
        }',
        'focus'=>'js:function(event, ui) {
            return false;
        }'
    ),
));
于 2012-10-27T23:18:35.500 回答