Jquery Yii自动完成从另一个自动完成字段填充
在这里和那里爬行后,我尝试从Yii中的另一个自动完成设置一个自动完成 第一个自动完成工作良好! 对于第二个问题,代码缺少成功数据的一部分,我真的被困在那里了,如何将它“链接”到代码末尾的_renderItem 感谢您的帮助Jquery Yii自动完成从另一个自动完成字段填充,jquery,yii,autocomplete,Jquery,Yii,Autocomplete,在这里和那里爬行后,我尝试从Yii中的另一个自动完成设置一个自动完成 第一个自动完成工作良好! 对于第二个问题,代码缺少成功数据的一部分,我真的被困在那里了,如何将它“链接”到代码末尾的_renderItem 感谢您的帮助 <?php // First AUTOCOMPLETE $this->widget('zii.widgets.jui.CJuiAutoComplete', array( 'model'=> $model, 'attribute'=>'e
<?php
// First AUTOCOMPLETE
$this->widget('zii.widgets.jui.CJuiAutoComplete', array(
'model'=> $model,
'attribute'=>'esarticle',
'value' =>$this->createUrl('Utility/autocomplete', array('id'=>'cpl_esarticle','model'=>'Entresortie')),
'source'=>$this->createUrl('Utility/autocomplete', array('id'=>'cpl_esarticle','model'=>'Entresortie')),
'options'=>array(
'focus'=> 'js:function( event, ui ) {
$( "#Entresortie_esarticle" ).val( ui.item.esarticle );
return false;
}',
'select'=>'js:function( event, ui ) {
$( "#Entresortie_esarticle" ).val( ui.item.esarticle );
return false;
}'),
'htmlOptions'=>array(
'size'=>12,
'maxlength'=>14,
'autofocus'=>'autofocus',
),));
// Second AUTOCOMPLETE
$quotedUrl = $this->createUrl('entresortie/cpl_eslot');
$this->widget('zii.widgets.jui.CJuiAutoComplete', array(
'model'=> $model,
'attribute'=>'eslot',
'value' =>$this->createUrl('Utility/autocomplete', array('id'=>'cpl_eslot','model'=>'Entresortie')),
'source'=>'js:function(request, response) {
$.ajax({
url: "'. $quotedUrl . '",
data: { "term": request.term, "art":$( "#Entresortie_esarticle" ).val() },
success: function(data) { response(data); }
});
}',
'options'=>array(
'focus'=> 'js:function( event, ui ) {
$( "#Entresortie_eslot" ).val( ui.item.eslot );
return false;
}',
'select'=>'js:function( event, ui ) {
$( "#Entresortie_eslot" ).val( ui.item.eslot );
return false;
}'),
'htmlOptions'=>array(
'size'=>12,
'maxlength'=>14,
'autofocus'=>'autofocus',
),));
// Additional script to fill the autocomplete list
Yii::app()->clientScript->registerScript('input', '
$("#Entresortie_esarticle").data("autocomplete")._renderItem = function( ul, item ) {
return $( "<li></li>" )
.data( "item.autocomplete", item )
.append( "<a>"+item.esarticle+"</a>")
.appendTo( ul );
};
$("#Entresortie_eslot").data("autocomplete")._renderItem = function( ul, item ) {
return $( "<li></li>" )
.data( "item.autocomplete", item )
.append( "<a>"+item.eslot+"</a>")
.appendTo( ul );
};');
?>
需要注意的是:在suces函数的第二个autocomplete中,数据字段由我的查询返回的JSON字符串填充。但是,我需要用这些值“填充”我的自动完成字段……我通过两步表单来解决我的问题。然而,如果有人能找到一个答案,我还是会很感兴趣的!