Yii2:使用 Kartik Depdrop Widget?

2023-12-04

好的,我正在尝试使用 Kartik Depdrop 小部件,我得到的只是一个白色下拉列表,该列表中的值未显示在相关下拉列表中。

我有一个州模型和一个城市模型,我的设置是这样的。

在_form.php中

$catList=ArrayHelper::map(app\models\State::find()->all(), 'id', 'state_name' );  
  echo $form->field($model, 'state')->dropDownList($catList, ['id'=>'state_name']);

echo $form->field($model, 'district_city')->widget(DepDrop::classname(), [
'options'=>['id'=>'district_city'], 
'pluginOptions'=>[
'depends'=>['state_name'], // the id for cat attribute
'placeholder'=>'Select...',
'url'=>  \yii\helpers\Url::to(['patient-entry/subcat'])
]
]);
  ?>

然后在模型中

    public static function getCity($city_id) {
        $data=\app\models\City::find()
       ->where(['state_name'=>$city_id])
       ->select(['id','city_name'])->asArray()->all();

            return $data;
        }

然后在我的控制器中

public function actionSubcat() {
        $out = [];
        if (isset($_POST['depdrop_parents'])) {
        $parents = $_POST['depdrop_parents'];

        if ($parents != null) {
        $cat_id = $parents[0];
        $out = \app\models\PatientEntry::getCity($cat_id);
        echo Json::encode(['output'=>$out, 'selected'=>'']);
        return;
        }
        }
        echo Json::encode(['output'=>'', 'selected'=>'']);
        }

当我选择状态字段时,Firebug 控制台正确显示数据,如下所示:

{"output":[{"id":"172","city_name":"Along"},{"id":"173","city_name":"Bomdila"},{"id":"174","city_name":"Itanagar"},{"id":"175","city_name":"Naharlagun"},{"id":"176","city_name":"Pasighat"}],"selected":""}

城市字段下拉列表也显示好像已填充数据,但只有空白。

我在这里做错了什么?

Thanks.


好的,我找到了解决方案,所有代码都可以,实际上 depdrop 小部件会查找该对id and name like:

// the getSubCatList function will query the database based on the
        // cat_id and return an array like below:
        // [
        // ['id'=>'<sub-cat-id-1>', 'name'=>'<sub-cat-name1>'],
        // ['id'=>'<sub-cat_id_2>', 'name'=>'<sub-cat-name2>']
        // ]

因此我更改了模型中的代码

->select(['id','city_name'])->asArray()->all();

with

->select(['id','city_name AS name'])->asArray()->all();

仅此而已,现在运行良好。希望有人会发现这很有用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Yii2:使用 Kartik Depdrop Widget? 的相关文章

  • 展平数组:保持索引、值等于数组中的位置

    我在尝试以特定方式展平数组时遇到了一些麻烦 这里有一个print r我想要展平的数组的视图 Array 1 gt Array 8 gt 1 9 gt 2 10 gt Array 15 gt Array 22 gt 1
  • 内连接 3 个表

    我正在使用 PHP 和 PDO 我需要重新收集连接 3 个表的信息 photos albums 相册照片 该表具有以下结构 photos photo id int path varchar nick varchar date timesta
  • PHP 异常处理与 C#

    这是一个非常基本的问题 我希望如此 我所做的大部分异常处理都是使用 C 进行的 在 C 中 任何在 try catch 块中出错的代码都会由 catch 代码处理 例如 try int divByZero 45 0 catch Except
  • Facebook“赞”按钮回调帮助

    我正在使用此代码进行类似 facebook 的回调 问题是 如果我调用 php 脚本 例如 有人可以看到我的 javascript 并运行此页面 甚至可以向其发送垃圾邮件或在没有先点赞的情况下使用它 我的想法是 我想为每个喜欢该页面的用户提
  • PHP 删除字符最后一个实例之前的所有内容

    有没有办法删除某个字符之前的所有内容 包括最后一个实例 我有多个字符串 其中包含 gt e g the gt cat gt sat gt on gt the gt mat welcome gt home 我需要对字符串进行格式化 以便它们变
  • zend 表单验证

    我想知道 Zend Form 如何验证输入 我的意思是它如何知道要验证哪些输入字段 我查看了 php 全局变量 POST GET 但没有看到任何设置为标识符 例如 的内容 以便了解如何验证 有人能给我推荐一些关于这些东西的指南吗 好吧 找出
  • 如何使用 php DOM 获取 内的值?

    我如何使用 php DOM 获取 内的值 这是我的 xml 中的一些代码
  • DataTables 第 2 页的分页未调用放大弹出窗口

    所以我有这个启用分页的数据表 我编码了一种方式 以便用户可以编辑表的行 当用户调用它在放大弹出窗口中打开的编辑页面时 它在第 1 页 从第 2 页起都运行良好 DataTable 及其前面停止调用 Magnific Popup 我只是不明白
  • PHP 中的静态类初始值设定项

    我有一个带有一些静态函数的辅助类 类中的所有函数都需要一个 重 初始化函数来运行一次 就好像它是一个构造函数 有实现这一目标的良好实践吗 我唯一想到的就是打电话init函数 如果它已经运行过一次 使用静态 initialized变种 问题是
  • CryptoJS 使用密码加密 AES,但 PHP 解密需要密钥

    我在用CryptoJS https code google com p crypto js AES加密字符串 function doHash msg msg String msg var passphrase aggourakia var
  • 使用第三方库记录来自 PHP 应用程序的所有 cURL 请求

    好吧 我的 PHP Yii2 应用程序遇到了困难 我需要记录来自应用程序的每个传入和传出请求 传入的请求可以轻松地记录在 PHP 本身中 在引导阶段添加一些处理程序 这很容易 但真正的问题是我正在使用许多第三方库 即 Amazon MWS
  • 优雅地退出 Laravel 作用域

    我有一个范围 它根据用户角色以限制方式起作用 您可以将一组规则转发到限制数据库最终输出的范围 一个非常简化的角色限制示例 first name foo 只会返回其记录first name开始于foo 这实际上意味着我已禁止具有该角色的用户查
  • 错误 #520009 - 帐户受到限制

    我收到 520009 错误 帐户 电子邮件受保护 cdn cgi l email protection被限制 当尝试进行并行付款时 我的代码使用沙箱运行良好 但我切换到实时端点 它开始失败 有问题的帐户是有效的 PayPal 帐户 我使用的
  • Yii 未检测到骆驼案例操作

    伊伊正在给我404 Error如果我声明这样的操作 站点控制器 php public function actionRegisterUser 这就是我在main php label gt Register User url gt site
  • ASP.NET MVC 3 中嵌入的 PHP 站点的 IgnoreRoute

    我有一个带有嵌入式 WordPress 博客的 MVC 3 网站 以下所有 url 均通过 MVC 定向 www mysite com www mysite com aboutus www mysite com contactus 我还有一
  • 从检查元素隐藏 ''

    我有这个 HTML 和 PHP 联系表
  • 自定义 WordPress 画廊 html 布局

    当使用默认媒体上传器在 WordPress 中创建图像库时 WordPress 将图像包装在一堆 HTML 标记中 如何在生成之前覆盖它 以便我可以输出所需的标记并更改创建图库布局的方式 目前 WordPress 生成的代码如下 div d
  • 控制数据是否存在于数组中

    我在mysql中有两个不同的表 我正在使用curl从json文件中获取数据 我的第一个表名称是 tblclients 该表存储客户端数据 我的第二个表名称是 tblcustomfieldsvalues 该表使用 tblclients 表的
  • PHP 中根据相似值对数组进行分组

    我有一个具有以下结构的数组
  • 我如何向 Windows Server IIS 7 中的文件夹授予权限

    我是 PHP 和 Windows Server 新手 在查看我在 PHP 中创建的表单时遇到以下错误 Error in exception handler The stream or file C inetpub wwwroot wrp a

随机推荐

  • URL 编码 PHP

    我测试过urlencode and 原始编码 输出并且它们产生不同的结果 就像在 Firefox 和一些在线编码器中一样 Example 火狐浏览器和编码器 C3 A4 C3 9F PHP rawurlencode 和 urlencode
  • ggplot:使用 stat_summary 时如何更改箱线图设置

    我想要分组箱线图 其中胡须由 stat summary 定义 在 的帮助下改变晶须定义我写了以下代码 Data xdf2 lt data frame month rep 1 6 each 100 grp rep c A B 50 6 xdf
  • 如何使不同的AWS API网关环境指向lambda函数的不同别名?

    在我的 AWS API Gateway API 中 我设置了 2 个环境 dev 和 prod 我还有一个名为 dev 和 prod 的 AWS lambda 函数的 2 个别名 现在 我想将 API 的 dev 环境指向函数的 dev 别
  • 有没有办法在 Mac OS 上播放系统提示音?

    有没有办法使用 C 和 Xcode 在 Mac OS 上播放系统蜂鸣声 我知道我需要使用图书馆 是否有一个可以跨 Mac 和 Windows 平台运行的库 我想你可能想使用NSBeep NSBeep 播放系统提示音 include
  • 在 PHP 中将图像直接保存到目录中? [关闭]

    很难说出这里问的是什么 这个问题模棱两可 含糊不清 不完整 过于宽泛或言辞激烈 无法以目前的形式合理回答 如需帮助澄清此问题以便重新打开 访问帮助中心 我有一个图像文件 例子 http images5 fanpop com image ph
  • iOS 中的动态自定义字体加载器

    我已经知道如何将自定义字体加载到 iPhone 应用程序中的项目中here我想问一下有没有办法通过代码来做到这一点 我的问题是我的应用程序中有一个资源文件夹 我有一个字体文件名 我们称之为 myfont ttf 我想抓取一个 ttf 文件并
  • 如何在Python中使用多个分隔符分割字符串?

    有这一行 Breathing 1 31 145 9 32 8942 13 35 8225 2 35 9872 17 36 2135 16 36 6343 12 36 7487 4 37 8538 8 38 6924 7 39 0389 14
  • 给出 xmlns 时,DOM XPath 查询不起作用

    在 Firefox JavaScript 控制台中 parser new DOMParser foo parser parseFromString
  • 谷歌地图 api v3 - 如何限制多边形线的数量并在 5 次点击时强制关闭?

    我有这个代码
  • cURL 和 SSL、connect() 超时

    我使用 cURL 连接到 SSL 服务器来接收和发送 XML 文件 但我不断收到 connect 超时 当我尝试连接到服务器时 我对 cURL 有点陌生 所以我不知道服务器配置 某些证书或什么有问题 我尝试运行的代码 由 SSL 服务器的所
  • 如何在乌龟图形中绘制椭圆/椭圆形?

    如何在 Python 中绘制海龟图形中的椭圆 卵形 我希望能够使用以下命令绘制椭圆和椭圆的一部分circle 函数或类似函数 我可以使用 turtlesize stretch wid None stretch len 10 outline
  • 如何获取 Git 中当前的分支名称?

    如何获取 Git 中当前分支的名称 显示only您当前所在分支的名称 git rev parse abbrev ref HEAD 参考 仅显示 Git 中的当前分支
  • Curl 无法正确识别 cookie 中的过期值

    我正在尝试使用curl 登录pinterest com 我得到以下请求 响应流程 GET 请求登录表单并抓取隐藏字段 csrftoken POST 请求登录凭据 电子邮件和密码 和抓取的 csrf 令牌 接收登录会话 Cookie 使用 C
  • R - 使用正则表达式查找/替换换行符

    我正在尝试使用正则表达式清理文件夹中的一堆 txt 文件 我似乎无法让 R 找到换行符 这是我正在使用的代码 它适用于字符替换 但不适用于换行符 gsub dir dir folder name pattern n replacement
  • 如何创建完整的圆形LinearLayout或RelativeLayout

    我正在尝试创建一个完整的圆形布局 以便如果我将任何内容放入该布局中 该内容应该在圆圈内 这怎么可能 我尝试了以下方法 但形状并不总是圆形的 有时根据空间的不同 它会变成椭圆形 如何始终保持布局循环且内容应位于其中
  • 出现错误:无法比较的类型 - Object 和 int

    我的代码如下 但是当我构建项目时 Netbeat 给了我这个警告 错误 无法比较的类型 Object 和 int if p info x 有谁知道如何修复这个错误 谢谢 这是错误代码 public void insert int x if
  • 单击时突出显示单元格边框颜色,单击其他单元格时变回

    我有下面的代码 function highlight cell cell style borderColor red function originalColor cell cell style borderColor black td c
  • .NET病毒扫描API

    我正在构建一个 Web 应用程序 需要在其中扫描用户上传的文件是否存在病毒 是否有任何具有构建此类内容经验的人可以提供有关如何启动和运行此内容的信息 我猜测防病毒软件包有 API 可以通过编程方式访问其功能 但掌握详细信息似乎并不容易 仅供
  • Windows 应用商店应用程序中的 DynamicResource?

    WPF 对 DynamicResource 的支持非常棒 因为这允许用户更改正在运行的应用程序的外观 但 WinRT 不支持 DynamicResource 编写允许用户动态更改 UI 主题的应用程序的推荐方法是什么 我目前也在尝试对此提出
  • Yii2:使用 Kartik Depdrop Widget?

    好的 我正在尝试使用 Kartik Depdrop 小部件 我得到的只是一个白色下拉列表 该列表中的值未显示在相关下拉列表中 我有一个州模型和一个城市模型 我的设置是这样的 在 form php中 catList ArrayHelper m