1

我正在尝试为两个输入字段自动完成:City 和 locality。我希望本地提示基于 City 字段中的值:这是我拥有的当前代码:

        $this->widget('zii.widgets.jui.CJuiAutoComplete', array(
                                 'name'=>'Address[locality]',
                                 'value'=>$Address->locality,
                                 'source'=>CController::createUrl('site/suggestLocation'),
                                 'options'=>array(
                                     'minLength'=>'2',
                                     'focus'=>'js:function( event, ui ) {
                                      $( "#Users_locality" ).val( ui.item.label );
                               return false;
                              }',
                                     'select'=>'js:function( event, ui ) {$("#Users_locality").val( ui.item.label );$("#User_church").val( ui.item.value ); return false; }',
                                 ),
                                 'htmlOptions'=>array(
                                     'class' => 'login_textbox', 'autocomplete'=>'off',
                                 ),
                            ));
4

1 回答 1

0

focusjavascript 事件中,您应该在源 url 中添加一个参数 city ,其中包含用户填写的城市值。

然后在控制器的“actionSuggestLocation”方法中处理这个参数:

  • 检查参数是否存在
  • 如果仅建议给定城市中的位置
  • 如果不是,则显示所有位置,例如
于 2012-11-28T09:21:18.820 回答