动态表格 select 和 JavaScript
Dynamic form select with JavaScript
我的数据库中有两个类别 table。
女性时尚与男性时尚
男装下有男鞋
女装下有女包
我想要一个 javascript 我将在 HTML 表格中使用 select 这样当一个 select 的女装时,he/she 会看到列表第二种形式的女性时尚下的物品,如女性包,或者当一个 select 男性时尚,he/she 也会看到第二种形式的男性时尚下的物品列表,如男鞋。
样本
<form class="form">
<div class="form-group">
<select id="box1" name="num">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<select id="box2" name="letters">
<option value="a">A</option>
<option value="b">B</option>
</select>
</div>
</form>
那我有这个
$("#box1").on('change', function () {
var value = $(this).val();
if (value === "1" || value === "2") {
$("#box2").show();
} else {
$("#box2").hide();
}
});
但不知道如何使用数据库值实现它
请帮忙
对此代码应用枯燥的哲学
这只是一个测试,但它是您要寻找的行为吗?
HTML 代码
<form class="form">
<div class="form-group">
<select id="collections" name="collection">
<option>Select a value</option>
<option value="man">Man</option>
<option value="woman">Woman</option>
</select>
<select id="box2" name="collections-items">
</select>
</div>
</form>
JS代码
let chooseCollections = document.querySelector('#collections')
let selectItems = document.querySelector('#box2')
let manCollection = {
categories: ["Shoes", "Shirt"]
}
let womanCollection = {
categories: ["Dress", "Shirt"]
}
chooseCollections.addEventListener('change', (e) => {
selectItems.querySelectorAll('*').forEach(el => el.remove());
selectItems.style.display = "none"
if(e.target.value === "man") {
selectItems.style.display = "block"
for(let i = 0; i < manCollection.categories.length; i++) {
var option = document.createElement('option')
var value = manCollection.categories[i]
option.value = value
option.innerHTML = value
selectItems.appendChild(option)
}
}
if(e.target.value === "woman") {
selectItems.style.display = "block"
for(let i = 0; i < womanCollection.categories.length; i++) {
var option = document.createElement('option')
var value = womanCollection.categories[i]
option.value = value
option.innerHTML = value
selectItems.appendChild(option)
}
}
})
CSS
#box2 {
display: none;
}
我将 manCollection 和 womanCollection 表示为您数据库中的数据。此代码未优化,可以更高效,但您可以从那个开始。
我的数据库中有两个类别 table。
女性时尚与男性时尚
男装下有男鞋
女装下有女包
我想要一个 javascript 我将在 HTML 表格中使用 select 这样当一个 select 的女装时,he/she 会看到列表第二种形式的女性时尚下的物品,如女性包,或者当一个 select 男性时尚,he/she 也会看到第二种形式的男性时尚下的物品列表,如男鞋。
样本
<form class="form">
<div class="form-group">
<select id="box1" name="num">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<select id="box2" name="letters">
<option value="a">A</option>
<option value="b">B</option>
</select>
</div>
</form>
那我有这个
$("#box1").on('change', function () {
var value = $(this).val();
if (value === "1" || value === "2") {
$("#box2").show();
} else {
$("#box2").hide();
}
});
但不知道如何使用数据库值实现它
请帮忙
对此代码应用枯燥的哲学
这只是一个测试,但它是您要寻找的行为吗?
HTML 代码
<form class="form">
<div class="form-group">
<select id="collections" name="collection">
<option>Select a value</option>
<option value="man">Man</option>
<option value="woman">Woman</option>
</select>
<select id="box2" name="collections-items">
</select>
</div>
</form>
JS代码
let chooseCollections = document.querySelector('#collections')
let selectItems = document.querySelector('#box2')
let manCollection = {
categories: ["Shoes", "Shirt"]
}
let womanCollection = {
categories: ["Dress", "Shirt"]
}
chooseCollections.addEventListener('change', (e) => {
selectItems.querySelectorAll('*').forEach(el => el.remove());
selectItems.style.display = "none"
if(e.target.value === "man") {
selectItems.style.display = "block"
for(let i = 0; i < manCollection.categories.length; i++) {
var option = document.createElement('option')
var value = manCollection.categories[i]
option.value = value
option.innerHTML = value
selectItems.appendChild(option)
}
}
if(e.target.value === "woman") {
selectItems.style.display = "block"
for(let i = 0; i < womanCollection.categories.length; i++) {
var option = document.createElement('option')
var value = womanCollection.categories[i]
option.value = value
option.innerHTML = value
selectItems.appendChild(option)
}
}
})
CSS
#box2 {
display: none;
}
我将 manCollection 和 womanCollection 表示为您数据库中的数据。此代码未优化,可以更高效,但您可以从那个开始。