php - 如何解决依赖下拉列表的错误?
问题描述
Dependent DropdownList 工作得特别好。但是当我单击下拉菜单时,我看不到选项列表
我已经阅读了所有论坛,但我找不到像我这样的问题
索引.php
$a = [
'Qoraqalpog‘iston Respublikasi' => 'Qoraqalpog‘iston Respublikasi',
'Andijon viloyati' => 'Andijon viloyati',
'Buxoro viloyati' => 'Buxoro viloyati',
'Jizzax viloyati' => 'Jizzax viloyati',
'Qashqadaryo viloyati' => 'Qashqadaryo viloyati',
'Navoiy viloyati' => 'Navoiy viloyati',
'Namangan viloyati' => 'Namangan viloyati',
'Samarqand viloyati' => 'Samarqand viloyati',
'Sirdaryo viloyati' => 'Sirdaryo viloyati',
'Surxondaryo viloyati' => 'Surxondaryo viloyati',
'Toshkent viloyati' => 'Toshkent viloyati',
'Farg‘ona viloyati' => 'Farg‘ona viloyati',
'Xorazm viloyati' => 'Xorazm viloyati',
'Toshkent shahri' => 'Toshkent shahri',
];
<?php $f = ActiveForm::begin([
'fieldConfig' => ['options' => ['class' => 'input-field']],
'enableAjaxValidation' => false,
'enableClientValidation'=>true,
'options' => [
'enctype' => 'multipart/form-data',
// 'onSubmit'=> 'return false'
]
])?>
<?= $f->field($contact,'name_of')->label(Yii::t('template','Ta\'lim muassasasi nomi yoki raqami*'))->error(false)?>
<?= $f->field($contact, 'city' ,['options' => ['class' => 'input-field']])->error(false)->label(Yii::t('template',"Ta'lim muassasasi joylashgan hudud*"))
->dropDownList(
$a,
[
'prompt'=>Yii::t('template','Hududni tanlang'),
'onchange'=> '
$.post( "'.Yii::$app->urlManager->createUrl('site/regions?id=').'"+$(this).val(), function( data ) {
$( "select#contactform-region" ).html( data );
});
'
]
);?>
<?= $f->field($contact,'region')->error(false)->dropDownList(
$empty,
[
]);?>
动作区域()
public function actionRegions($id){
$posts = Regions::find()
->where(['idCity' => $id])
->all();
$count = Regions::find()
->where(['idCity' => $id])
->count();
$lang = Yii::$app->language;
if ($count>0){
foreach($posts as $post) {
echo "<option value='".$post->id."'>".$post->{"name_".$lang}."</option>";
}
} else {
echo "<option>-</option>";
}
}
这是空的 https://imgur.com/a/IDso2oQ 点击下拉菜单没有发生任何事情 https://imgur.com/a/wh4ZFd9
解决方案
在我看来,您正在使用选择包装器。我认为您应该在 ajax 之后更新您的选择包装器插件内容。如果您在这里使用物化 css 是一个解决方案如何在物化 css 框架中动态修改 <select>
推荐阅读
- javascript - 触发状态变化的特定功能
- vue.js - VueJS 应用程序没有被 nginx 正确代理
- javascript - 通过前导零和尾随零拆分数字
- javascript - 在这种情况下,为什么 Angular HTTPClient 重复其余调用两次?
- r - 矩阵乘数误差 - 将最大值转换为和
- python - 相机校准基本疑惑
- reactjs - 如何动态创建动画视图并保持其他动画状态反应?
- javascript - 如何用 JavaScript 解决这个问题?
- reactjs - 如何在 React 中沿滑块移动的 ReachUI 中放置标签
- python-3.x - 如何使用python函数遍历从另一个函数接收到的文件