Javascript <;选择>;不在IE工作的人口
我有一个jquery脚本,它根据第一个Javascript <;选择>;不在IE工作的人口,javascript,jquery,select,Javascript,Jquery,Select,我有一个jquery脚本,它根据第一个上的选择填充第二个。一切都很好,但我当然有问题,与Internet Explorer,我不知道如何解决它 JS: $(文档).ready(函数(){ 变量类别=[ { 值:“1”, 名称:“Telefoane,Tablete si Laptopuri”, 子类别:[{ 值:“10”, 名称:“Telefoane Mobile” }, { 值:“11”, 名称:“Tablete” }, { 值:“12”, 名称:“Laptopuri” }, { 值:“13”,
上的选择填充第二个
。一切都很好,但我当然有问题,与Internet Explorer,我不知道如何解决它
JS:
$(文档).ready(函数(){
变量类别=[
{
值:“1”,
名称:“Telefoane,Tablete si Laptopuri”,
子类别:[{
值:“10”,
名称:“Telefoane Mobile”
}, {
值:“11”,
名称:“Tablete”
}, {
值:“12”,
名称:“Laptopuri”
}, {
值:“13”,
名称:“智能手表”
}, {
值:“14”,
名称:“布拉塔里健身”
}, {
值:“15”,
名称:“无人机”
}, {
值:“16”,
名称:'Altele'
}]
}, {
值:“2”,
名称:'PC,部件si Periferice',
子类别:[{
值:'17',
名称:“Sisteme PC”
}, {
值:'18',
名称:“Monitoare”
}, {
值:'19',
名称:“组件PC”
}, {
值:“20”,
名称:“Periferice PC”
}, {
值:“21”,
名称:'Imprimante si Consumabile'
}]
}, {
值:“3”,
名称:“电视、音频、Foto si游戏”,
子类别:[{
值:'22',
名称:“Televizore”
}, {
值:“23”,
名称:“家庭影院si音频”
}, {
值:“24”,
名称:'Aparate Foto si Accesorii'
}, {
值:'25',
名称:“Camere Video si Sport”
}, {
值:'26',
名称:'Console si Jocuri'
}]
}, {
值:“4”,
名称:'Electrocasnice',
子类别:[{
值:'27',
名称:'Aer condition at'
}, {
值:“28”,
姓名:'friencource'
}, {
值:'29',
名称:'Masini de spalat rufe'
}, {
值:“30”,
名称:“Aragazuri”
}, {
值:“31”,
名字:“Hote”
}, {
值:“32”,
名称:“意大利水瓶马赛尼”
}, {
值:“33”,
名称:“Cuptoare cu microunde”
}, {
值:'34',
名称:'Aparate de bucatarie'
}, {
值:'35',
名称:'Aparate de calcat'
}, {
值:“36”,
姓名:'Spirsoare'
}, {
值:'37',
名称:'Altele'
}]
}, {
值:“5”,
名称:'Casa,Gradina si Bricolaj',
子类别:[{
值:“38”,
名称:“美孚装饰”
}, {
值:“39”,
名字:“格拉迪纳”
}, {
值:'40',
名称:“建筑材料”
}, {
值:“41”,
名称:“Termice”
}, {
值:'42',
名称:'Electrice si Sanitare'
}, {
值:'43',
名称:'Unelte'
}, {
值:'44',
姓名:“史卡丽·西费罗尼”
}, {
值:“45”,
名称:“Articole menaj”
}]
}, {
值:“6”,
名称:“体育运动”,
子类别:[{
值:'46',
名称:“阿勒加雷”
}, {
值:'47',
名称:'AtletisTriatlon'
}, {
值:“48”,
名称:“Sporturi de iarna”
}, {
值:'49',
名称:'Ciclism'
}, {
值:“50”,
名称:'Drumetii'
}, {
值:'51',
名称:“我是阿提克罗尔之旅”
}, {
值:'52',
名称:“Tenis si Tenis de masa”
}, {
值:'53',
名称:“角色”
}, {
值:'54',
名称:“Trotinete si Skateboard”
}, {
值:'55',
名称:“Pescuit si Vanatoare”
}, {
值:'56',
名称:'Altele'
}]
}, {
值:“7”,
名称:'Auto si Moto',
子类别:[{
值:'57',
名称:“Anvelope si Jante”
}, {
值:'58',
名称:“Intretinere si Cosmetica auto”
}, {
值:'59',
名称:“Electronice auto”
}, {
值:'60',
名称:Acces
$(document).ready(function(){
var categories = [
{
value: '1',
name: 'Telefoane, Tablete si Laptopuri',
subCategories: [{
value: '10',
name: 'Telefoane Mobile'
}, {
value: '11',
name: 'Tablete'
}, {
value: '12',
name: 'Laptopuri'
}, {
value: '13',
name: 'Smartwatch'
}, {
value: '14',
name: 'Bratari Fitness'
}, {
value: '15',
name: 'Drone'
}, {
value: '16',
name: 'Altele'
}]
}, {
value: '2',
name: 'PC, Componente si Periferice',
subCategories: [{
value: '17',
name: 'Sisteme PC'
}, {
value: '18',
name: 'Monitoare'
}, {
value: '19',
name: 'Componente PC'
}, {
value: '20',
name: 'Periferice PC'
}, {
value: '21',
name: 'Imprimante si Consumabile'
}]
}, {
value: '3',
name: 'TV, Audio, Foto si Gaming',
subCategories: [{
value: '22',
name: 'Televizoare'
}, {
value: '23',
name: 'Home Cinema si Audio'
}, {
value: '24',
name: 'Aparate Foto si Accesorii'
}, {
value: '25',
name: 'Camere Video si Sport'
}, {
value: '26',
name: 'Console si Jocuri'
}]
}, {
value: '4',
name: 'Electrocasnice',
subCategories: [{
value: '27',
name: 'Aer conditionat'
}, {
value: '28',
name: 'Frigorifice'
}, {
value: '29',
name: 'Masini de spalat rufe'
}, {
value: '30',
name: 'Aragazuri'
}, {
value: '31',
name: 'Hote'
}, {
value: '32',
name: 'Masini de spalat vase'
}, {
value: '33',
name: 'Cuptoare cu microunde'
}, {
value: '34',
name: 'Aparate de bucatarie'
}, {
value: '35',
name: 'Aparate de calcat'
}, {
value: '36',
name: 'Aspiratoare'
}, {
value: '37',
name: 'Altele'
}]
}, {
value: '5',
name: 'Casa, Gradina si Bricolaj',
subCategories: [{
value: '38',
name: 'Mobila si Decoratiuni'
}, {
value: '39',
name: 'Gradina'
}, {
value: '40',
name: 'Materiale de constructii'
}, {
value: '41',
name: 'Termice'
}, {
value: '42',
name: 'Electrice si Sanitare'
}, {
value: '43',
name: 'Unelte'
}, {
value: '44',
name: 'Scule si Feronerie'
}, {
value: '45',
name: 'Articole menaj'
}]
}, {
value: '6',
name: 'Sport si Activitati',
subCategories: [{
value: '46',
name: 'Alergare'
}, {
value: '47',
name: 'Atletism si Triatlon'
}, {
value: '48',
name: 'Sporturi de iarna'
}, {
value: '49',
name: 'Ciclism'
}, {
value: '50',
name: 'Drumetii'
}, {
value: '51',
name: 'Camping si Articole voiaj'
}, {
value: '52',
name: 'Tenis si Tenis de masa'
}, {
value: '53',
name: 'Role'
}, {
value: '54',
name: 'Trotinete si Skateboard'
}, {
value: '55',
name: 'Pescuit si Vanatoare'
}, {
value: '56',
name: 'Altele'
}]
}, {
value: '7',
name: 'Auto si Moto',
subCategories: [{
value: '57',
name: 'Anvelope si Jante'
}, {
value: '58',
name: 'Intretinere si Cosmetica auto'
}, {
value: '59',
name: 'Electronice auto'
}, {
value: '60',
name: 'Accesorii auto'
}, {
value: '61',
name: 'Moto'
}, {
value: '62',
name: 'ATV'
}]
}, {
value: '8',
name: 'Jucarii, Copii si Bebe',
subCategories: [{
value: '63',
name: 'Scutece si Hrana'
}, {
value: '64',
name: 'Igiena si Ingrijire'
}, {
value: '65',
name: 'Carucioare'
}, {
value: '66',
name: 'Imbracaminte'
}, {
value: '67',
name: 'Jucarii'
}]
}, {
value: '9',
name: 'Animale de companie',
subCategories: [{
value: '68',
name: 'Caini'
}, {
value: '69',
name: 'Pisici'
}, {
value: '70',
name: 'Hrana'
}, {
value: '71',
name: 'Lese si Zgarzi'
}, {
value: '72',
name: 'Jucarii'
}, {
value: '73',
name: 'Imbracaminte'
}, {
value: '74',
name: 'Altele'
}]
}
];
var $categorySelect = $("#category");
var $subCategorySelect = $("#subcategory");
// populate categories with options
categories.forEach(function(category) {
var $option = $('<option/>').attr('value', category.value).html(category.name);
$categorySelect.append($option);
});
$categorySelect.on('change', function() {
// clean subcategory select from older options
$subCategorySelect.empty();
// find selected category
var selectedCategoryValue = $categorySelect.val();
var category = categories.find(function(category) {
return category.value == selectedCategoryValue;
});
// if category found - populate subcategory select
if (category) {
category.subCategories.forEach(function(subcategory) {
// you can extract this line into separate function
var $option = $('<option/>').attr('value', subcategory.value).html(subcategory.name);
$subCategorySelect.append($option);
});
}
})
});
<div class="step">
<div class="row">
<div class="col-md-6 col-sm-6">
<div class="form-group">
<label>Categorie</label>
<select class="form-control" name="category" id="category">
<option value=""></option>
</select>
</div>
</div>
<div class="col-md-6 col-sm-6">
<div class="form-group">
<label>Subcategorie</label>
<select class="form-control" name="subcategory" id="subcategory">
<option value=""></option>
</select>
</div>
</div>
</div>
</div>
var category = categories.filter(function(category) {
return category.value == selectedCategoryValue;
});
if (category[0]) {
category[0].subCategories.forEach(function(subcategory) {
// you can extract this line into separate function
var $option = $('<option/>').attr('value', subcategory.value).html(subcategory.name);
$subCategorySelect.append($option);
});
}
$.each(categories, function(k, v)
{
$('#category').append($('<option>', {
value: v.value,
text : v.name
}));
});
$('#category').on('change', function() {
alert('selected value '+this.value);
var val = this.value;
var result = categories.filter(function(v) {
return v.value === val;
})[0].subCategories;
console.log(result);
$.each(result, function(ka, va)
{
$('#subcategory').append($('<option>', {
value: va.value,
text : va.name
}));
});
});