Autocomplete Yii2自动完成无响应
我试图将用户列表显示为邮件。这是我的代码,但没有响应Autocomplete Yii2自动完成无响应,autocomplete,yii2,Autocomplete,Yii2,我试图将用户列表显示为邮件。这是我的代码,但没有响应 <?php $data = Users::find() ->select(['user_email as value', 'user_id as id']) ->asArray() ->all(); echo AutoComplete::widget([ 'name' => 'user_email', 'id' => 'ddd', 'clientOpt
<?php
$data = Users::find()
->select(['user_email as value', 'user_id as id'])
->asArray()
->all();
echo AutoComplete::widget([
'name' => 'user_email',
'id' => 'ddd',
'clientOptions' => [
'source' => $data,
'autoFill'=>true,
'minLength'=>'1',
'select' => new JsExpression("function( event, ui ) {
$('#user_mail_1').val(ui.item.id);
}")],
]);
?>
<?= $form->field($model, 'user_email')->HiddenInput(['id' => 'user_mail_1'])->label(false) ?>
您需要使用
标签
来显示自动完成输入值的值
因此,获取user\u电子邮件
aslabel
就像:
<?php
use yii\web\JsExpression;
$data = Users::find()
->select(['user_email as value', 'user_id as id', 'user_email as label'])
->asArray()
->all();
// OR try below query for get data.
$data = (new \yii\db\Query())
->select(["user_email as value", "user_email as label","user_id as id"])
->from('users u')
->all();
echo AutoComplete::widget([
'name' => 'user_email',
'id' => 'ddd',
'clientOptions' => [
'source' => $data,
'autoFill'=>true,
'minLength'=>'1',
'select' => new JsExpression("function( event, ui ) {
$('#".Html::getInputId($model, 'user_email')."').val(ui.item.id); // Html::gtInputId() get dynamic id of input field.
}")],
]);
?>
<?= $form->field($model, 'user_email')->hiddenInput()->label(false) ?>
您需要使用
标签
来显示自动完成输入值的值
因此,获取user\u电子邮件
aslabel
就像:
<?php
use yii\web\JsExpression;
$data = Users::find()
->select(['user_email as value', 'user_id as id', 'user_email as label'])
->asArray()
->all();
// OR try below query for get data.
$data = (new \yii\db\Query())
->select(["user_email as value", "user_email as label","user_id as id"])
->from('users u')
->all();
echo AutoComplete::widget([
'name' => 'user_email',
'id' => 'ddd',
'clientOptions' => [
'source' => $data,
'autoFill'=>true,
'minLength'=>'1',
'select' => new JsExpression("function( event, ui ) {
$('#".Html::getInputId($model, 'user_email')."').val(ui.item.id); // Html::gtInputId() get dynamic id of input field.
}")],
]);
?>
<?= $form->field($model, 'user_email')->hiddenInput()->label(false) ?>
检查浏览器控制台是否有错误。检查浏览器控制台是否有错误。发生了什么。我已经编辑了我的ans。我已经添加了Query
,用于从数据库获取数据。看看发生了什么。我已经编辑了我的ans。我已经添加了Query
,用于从数据库获取数据。看看吧。