javascript - 在下拉菜单中选择项目时如何显示内容?
问题描述
如何使它从下拉菜单中选择特定项目,显示一个包含与该块对应的信息的块?
例如,当您选择 Apple 项目时,会出现一个包含有关苹果信息的块,当您选择橙色时,会出现有关橙子的信息。
<select>
<option value="apple">Яблоко</option>
<option value="orange">Апельсин</option>
</select>
<div class="fruits">
<div class="apple-info">
<h1>Яблоко</h1>
<img src="https://static9.depositphotos.com/1011549/1208/i/950/depositphotos_12089121-stock-photo-green-apple-with-leaf.jpg" alt="">
</div>
<div class="orange-info">
<h1>Апельсин</h1>
<img src="https://befreshcorp.net/wp-content/uploads/2017/07/product-packshot-Orange.jpg" alt="">
</div>
</div>
解决方案
可以使用这样的东西。
let select = document.querySelector('select');
select.addEventListener('change', (e) => {
document.querySelectorAll('div[class*=info]').forEach(x => x.style.display = 'none');
document.querySelector('.'+e.target.value+'-info').style.display = 'block';
})
.fruits div {
display: none;
}
<select>
<option value="apple">Яблоко</option>
<option value="orange">Апельсин</option>
</select>
<div class="fruits">
<div class="apple-info">
<h1>Яблоко</h1>
<img src="https://static9.depositphotos.com/1011549/1208/i/950/depositphotos_12089121-stock-photo-green-apple-with-leaf.jpg" alt="">
</div>
<div class="orange-info">
<h1>Апельсин</h1>
<img src="https://befreshcorp.net/wp-content/uploads/2017/07/product-packshot-Orange.jpg" alt="">
</div>
</div>
推荐阅读
- jquery - jquery覆盖隐藏第二次点击
- php - php迁移/使用pdo从一台服务器上的数据库插入到另一台服务器
- java - 带有 apache Ivy 依赖管理的 Log4j2 无法解析 log4j-api-java9
- python - 如何使用字符串中的位置来更改 Pandas Dataframe 列中的每个字符串
- android - app中camera2 api的兼容性问题
- python - 雷达图 matplotlib - yticks 的位置
- c# - C# - 一种过滤某些类实例字段的干净/高性能方式
- dart - 对 127.0.0.1:80 的 HTTP 请求失败
- asp.net-core - .Net Core 206 移动网络上的部分内容错误
- twilio - Twilio 可编程聊天