gpt4 book ai didi

php - 基于单选按钮选择的下拉菜单

转载 作者:行者123 更新时间:2023-12-02 19:14:42 25 4
gpt4 key购买 nike

我有四个单选按钮,我想根据所选的单选按钮获取下拉菜单。最好是我准备好所有这些下拉菜单并根据选择显示它们,还是有办法使用 ajax 来做到这一点(因为下拉值来自数据库)?以下是单选按钮:

<input type="radio" name="some" value="someValue1">
<input type="radio" name="some" value="someValue2">
<input type="radio" name="some" value="someValue3">
<input type="radio" name="some" value="someValue4">

这是下拉菜单:

<select name="reason">
<?php
$data = WorkReason::all();
foreach ($data as $d) {
?>
<option value="<?php echo $d->code; ?>"><?php echo $d->reason; ?></option>
<?php
}
?>
</select>

我正在使用 php ActiveRecords 从数据库获取值。因此,如果有人知道这样做的好方法,我将不胜感激。

最佳答案

制作不同的下拉列表并添加一个 php 条件来检查单击了哪个单选按钮并显示该列表。您可以使用数组来选择正确的代码。

$radio2select = array ("someValue1" => "<select>..." , "someValue2" => "...", "someValue3" => "..."); // you get the idea
echo $radio2select($_REQUEST['radio']) ;

使用数组是避免使用 switch 语句的一个技巧,并且当您的下拉框已预先计算时它效果很好。

否则,创建一个构建下拉框的函数:

function select_reasons($which){
<select name="reason">
<?php
$data = WorkReason::all(array('conditions' => array ( 'reason = ?' => $which)));
foreach ($data as $d) {
?>
<option value="<?php echo $d->code; ?>"><?php echo $d->reason; ?></option>
<?php
}
?>
</select>
}

然后只需传递$_REQUEST[‘radio']即可生成相应的下拉列表。

请注意,我不知道您的数据库架构,但我认为它应该可以帮助您入门。

此外,此代码可以在常规 Get 或 Post 上运行,也可以嵌入 ajax 往返中(这取决于您使用的框架)。与基于 CSS 的解决方案相比,另一个优点是页面中仅包含必要的 html 代码。

关于php - 基于单选按钮选择的下拉菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13270699/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com