javascript - 当我从下拉列表中选择选项时,隐藏的下拉列表不可见
问题描述
当我从下拉列表中选择选项 Ram 时,我遇到了这个问题,隐藏的下拉列表应该是可见的。基本上,当我选择 ram 处理器时,我将数据添加到数据库中,下拉列表应该是可见的,否则它应该被隐藏,另一方面,当我选择处理器时,主板的隐藏下拉列表应该是可见的,否则它应该被隐藏,我试过了有很多方法,但没有一个下拉可见,我选择 ram 或处理器
<!-- Category -->
<label for="exampleInputCategory">Category</label>
<div class="form-group">
<select class="form-control" required name="category" onchange="showDiv(this)">
<option value="">Select Category</option>
<?php
$query = "SELECT * FROM category";
$run = mysqli_query($conn, $query);
while ($row = mysqli_fetch_array($run)) {
$CategoryName = $row["name"];
?>
<option value="<?php echo $CategoryName ?>"><?php echo $CategoryName ?></option>
<?php }?>
</select>
</div>
<!-- processor for ram -->
<!-- <div style="display:none"> -->
<div class="form-group" id="pfr" hidden>
<label for="exampleInputCategory">Select Processor for Ram</label>
<select class="form-control" name="porid">
<option value="">Select Processor</option>
<?php
$queryy = "SELECT * FROM products WHERE category='Processor' AND status='Active'";
$runn = mysqli_query($conn, $queryy);
while ($roww = mysqli_fetch_array($runn)) {
$ProcessorTitle = $roww["product_title"];
$ProcessorID = $roww["id"];
// var_dump($Processorid);
?>
<option value="<?php echo $ProcessorID ?>"><?php echo $ProcessorTitle ?></option>
<?php }?>
</select>
</div>
<!-- End Processor for ram -->
<!-- Motherboard for Processor -->
<!-- <div style="display:none"> -->
<div class="form-group" id="mfp" hidden>
<label for="exampleInputCategory">Select Motherboard for Processor</label>
<select class="form-control" name="mopid">
<option value="">Select Motherboard</option>
<?php
$queryyy = "SELECT * FROM products WHERE category='Motherboard' status='Active'";
$runnn = mysqli_query($conn, $queryyy);
while ($rowww = mysqli_fetch_array($runnn)) {
$MotherboardTitle = $rowww["product_title"];
$MotherboardID = $rowww["id"];
// var_dump($Processorid);
?>
<option value="<?php echo $MotherboardID ?>"><?php echo $MotherboardTitle ?></option>
<?php }?>
</select>
</div>
<!-- End Motherboard for Processor -->
<script type="text/javascript">
function showDiv(select){
if(select.value=="Ram"){
document.getElementById('pfr').style.display = "block";
}
elseif(select.value=="Processor") {
document.getElementById('mfp').style.display = "block";
}
else{
document.getElementById('pfr').style.display = "none";
document.getElementById('mfp').style.display = "none";
}
}
</script>
解决方案
你有一个错字。
更改
elseif(select.value=="Processor")
为
else if(select.value=="Processor")
推荐阅读
- python - 使用带有印地语或印度语的数据集创建熊猫数据框
- spring - spring boot如何为所有控制器定义属性文件
- ffmpeg - 使用 concat 协议时出现“必须指定至少一个输出文件”错误
- php - 正则表达式:当存在多个时,无法检测特定组中的所有事件
- python - discord.py,我正在制作一个机器人响应,根据您的感受对您做出响应,但仅打印第一个 if 语句中的内容 - probl000000
- sql - 获得与标量函数相同的查询结果
- javascript - 为什么我的小费计算器中不断得到 NaN 值?
- javascript - JSON 日期问题
- python - 何时关闭 MySQL 连接 discord.py
- c++ - 父类为模板时,Union 报错