当前位置: 首页 > 知识库问答 >
问题:

如何基于另一个选择选项禁用选择选项

靳睿
2023-03-14

我有两个表gendernames
names表有以下列表:
-男性姓名从nameID 1到nameID 10
-女性姓名从nameID 11到nameID 21
-两者都从nameID 23到nameID 31

性别表有三个属性:
-女性
-男性
-两者

我正在使用引导选择选项,我想显示从nameID11到nameid21的名称,如果用户从gender选择选项中选择女性,等等,这是可能的吗?我看到其他帖子,我注意到他们使用javascript,我从来没有使用过javascript,我可以达到同样的结果,用另一种方法

表性别
...................
genderID(PK)
genderName它可以是男性、女性或两者兼而有之

表名
...................
名称ID(PK)
名称

 <?php
include "connection.php";

echo " <p> Gender </p>";
echo "<select class='form-control' name='gender'>";
echo "'<option value=''></option>";

$sql2 = mysqli_query($con, "SELECT * FROM tableGender");

while ($row2 = mysqli_fetch_array($sql2)) {



    echo '<option selected="selected"  value="' . $row2['genderID'] . '">' . $row2['genderName'] . "</option>";





}

echo "</select>";


echo " <p> Names </p>";
echo "<select class='form-control' name='name'>";
echo "'<option value=''></option>";

$sql = mysqli_query($con, "SELECT * FROM tableNames");

while ($row = mysqli_fetch_array($sql)) {



    echo '<option selected="selected"  value="' . $row['nameID'] . '">' . $row['name'] . "</option>";





}

echo "</select>";


?>

共有1个答案

益泰平
2023-03-14

您可以使用jQuery只显示您想要的select-options。代码未经测试

$("input[name=gender]").change(function() {
    var gender = this.value;
    $("input[name=name] option").each(function() {
        if ((gender == "your-male-id" && this.value >= 1 && this.value <= 10) ||
            (gender == "your-female-id" && this.value >= 11 && this.value <= 20) ||
            (gender == "your-both-id" && this.value >= 21 && this.value <= 30)
        ) {
            $(this).show();
        } else {
            $(this).hide();
        }
    });
})
 类似资料:
  • 如果选择选项值是从循环中提取的,那么如何禁用该选项值?是否有其他方法解决此问题? 示例输出在循环和我想禁用选项值6和7。谢谢帮忙。

  • 我想调用一个函数时,选择的任何选项。类似于这样: 但不知何故不起作用。有人能帮忙吗。 请注意 我不想捕获更改事件,如果我选择已经选择选项,则不会触发更改事件

  • 问题内容: 我有以下型号: 在管理界面中,当创建新演示时,在用户从下拉列表中选择类别之后,我想限制“项目”下拉列表中的选择数量。如果用户选择其他类别,则项目选择应相应更新。我想在客户端上限制项目选择,甚至在服务器上进行表单验证之前。这是为了提高可用性,因为项目列表可能超过1000个,能够按类别缩小范围将有助于使其更易于管理。 是这样做的“捷径”还是自定义JavaScript是这里的唯一选择? 问题

  • 问题内容: 也许这是一个简单的问题,也许不是。我有一个选择框,在其中我用宽度进行硬编码。说120像素。 我希望能够显示第二个选项,以便用户可以看到文本的完整长度。 像其他一切一样。这在Firefox中可以正常工作,但不适用于Internet Explorer6。 问题答案: 如果您可以使用固定方式中预先存在的选项,而又不想通过编程方式更改宽度,那么除非有一点创意,否则可能会很不幸。 您可以尝试将属

  • 我希望,如果我选择“mammals”,动物选择选项只显示值为1的选项data-animal_class。 我知道如何获得哺乳动物值,但我不知道如何使用过滤器 这是我的代码:

  • 我想在选择另一个select元素的一个选项时显示一个select元素,在选择另一个选项时隐藏它。 这是JavaScript: 感谢任何帮助。谢谢