如何根据其他选择选项

时间:2016-06-06 14:30:17

标签: javascript php mysql twitter-bootstrap

我有两张表gendernames
名表有以下列表:
- 从名称ID 1到名称ID 10的男性姓名 - 从nameID 11到nameID 21的女性姓名 - 从nameID 23到nameID 31

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

我正在使用bootstrap select选项如果用户从性别选择选项中选择女性,我想显示从nameID11到nameID 21的名称等等 这有可能吗? 我看到其他帖子,我注意到他们使用javascript我以前从未使用过javascript,我可以用其他方法获得相同的结果

tableGender
...................
性别ID(PK)
genderName 可以是男性,女性或两者

表名
...................
nameID(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 个答案:

答案 0 :(得分:0)

您可以使用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();
        }
    });
})