Yii动态下拉输出查看

发布于 2025-01-08 05:32:10 字数 682 浏览 0 评论 0原文

使用这个 wiki 我有一个动态下拉列表工作得很好。我不想将相关数据填充到另一个下拉列表中,而是希望所有相关值以某种格式化列表的形式立即显示在屏幕上。

我将 ajax 操作中的更新更改为 'update'=>'#cities', 并添加到我的视图...

<div id="cities"> 
   <?php echo $model->relatedCities; ?>
</div 

和我的模型中

public function getRelatedCities()
{
   $out=CHtml::listData($this->cities,'CityId','Name');
   return implode('<br />', $out);
}

当我在下拉列表中进行选择时,没有任何更新在

中,firebug 中的 ajax 调用看起来不错。

那么如何一次性显示下拉列表中的动态相关内容呢?

Using this wiki I have a dynamic dropdownlist working just fine. Instead of the related data populating another dropdownlist I just want all the related values to display at once on the screen in some sort of formatted list.

I changed the update in the ajax action to 'update'=>'#cities', and added to my view...

<div id="cities"> 
   <?php echo $model->relatedCities; ?>
</div 

and to my model

public function getRelatedCities()
{
   $out=CHtml::listData($this->cities,'CityId','Name');
   return implode('<br />', $out);
}

When I make my selection in my dropdownlist nothing is updated in <div id="cities"> and the ajax call in firebug looks fine.

So how can I display the dynamic related content from the dropdownlist all at once?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

瑶笙 2025-01-15 05:32:10

这是您的操作有问题,您必须 echo 而不是 return

因为您的 ajax 调用需要 html 数据,而不是某些字符串。

所以试试这个:

public function getRelatedCities()
{
 $out=CHtml::listData($this->cities,'CityId','Name');
 echo implode('<br />', $out);
}

ps: 假设你已经验证 $out 不为空。

This is a problem with your action, you have to echo instead of return.

Because your ajax call is expecting html data, and not some string.

So try this:

public function getRelatedCities()
{
 $out=CHtml::listData($this->cities,'CityId','Name');
 echo implode('<br />', $out);
}

p.s: Assuming that you have verified that $out is not empty.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文