2015-02-07 6 views
8

मैं yii2 जुई स्वत: पूर्ण विजेट का उपयोग करने की कोशिश कर रहा हूं।वाईआई 2: जुई ऑटो पूर्ण विजेट कैसे करें?

मेरे पास यह कोड है जो स्वतः पूर्ण दिनांक दिखा रहा है, लेकिन मैं डेटा को सहेजने में सक्षम नहीं हूं।

$data=ArrayHelper::map(State::find()->all(), 'id', 'state_name'); 
$data=array_merge($data); 

और फिर

echo 'State' .'<br>'; 
    echo AutoComplete::widget([ 
    'model'=>$model, 
    'attribute' => 'state_id',  
    'clientOptions' => [ 
     'source' => $data,   
    ], 
]); 

कोई समाधान बहुत सराहना की जाएगी। धन्यवाद।

उत्तर

8

ठीक है, मैं समाधान नहीं मिला है, यह इस प्रकार है:

use yii\jui\AutoComplete; 
use yii\web\JsExpression; 

तब:

$data = State::find() 
    ->select(['state_name as value', 'state_name as label','id as id']) 
    ->asArray() 
    ->all(); 

फिर

echo 'State' .'<br>'; 
    echo AutoComplete::widget([ 
    'name' => 'State',  
    'id' => 'ddd', 
    'clientOptions' => [ 
     'source' => $data, 
     'autoFill'=>true, 
     'select' => new JsExpression("function(event, ui) { 
     $('#city-state_name').val(ui.item.id);//#City-state_name is the id of hiddenInput. 
    }")], 
    ]); 

और अंत में:

<?= Html::activeHiddenInput($model, 'state_name')?> 

यह सब कुछ है। आशा है कि कोई इसे उपयोगी लगेगा। धन्यवाद।

+0

हाय, स्वत: पूर्ण फ़ील्ड पर आधारित मॉडल सत्यापन को लागू करने का एक तरीका है? Thx –

+0

JUI इंस्टॉल करना न भूलें: https://github.com/yiisoft/yii2-jui – Ludo

संबंधित मुद्दे