по шагам:
<script>
function loadXMLDoc(filename) {
if (window.ActiveXObject) {
xhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
else {
xhttp = new XMLHttpRequest();
}
xhttp.open("GET", filename, false);
try { xhttp.responseType = "msxml-document" } catch (err) { } // Helping IE11
xhttp.send(null);
return xhttp.responseXML;
}
загрузили хмль
document.addEventListener('DOMContentLoaded', function () {
var xml = loadXMLDoc("xml/city.xml"),
selCity = document.querySelector('#city'),
// selStation = document.querySelector('#station2'),i;
selStation = document.getElementById('#station2'),i;
[].forEach.call(xml.querySelectorAll('city'), function (el) {
selCity.add(new Option(el.getAttribute('name'), el.getAttribute('name')))
// document.getElementById('sec1').innerHTML = el.getAttribute('name'),el.getAttribute('name');
})
прошлись по сити и именам его а т.е. (name="Новосибирск") или (name="Москва") или name="ленинград".
selCity.addEventListener('change', function () {
selStation.options.length = 0 , i=0;
//selStation.id.length = 0 , i=0;
[].forEach.call(xml.querySelectorAll('city[name=' + this.value + '] > station2'), function (el) {
// selStation.add(new Option(el.textContent, ++i));
// document.getElementById('sec1').innerHTML = el.textContent;
// document.getElementById('station2').innerHTML = el.getAttribute('name'),el.getAttribute('name'),i;
//selStation.add(el.textContent,++i);
document.getElementById('sec1').innerHTML = '123123123';
})
})
})
</script>
начиная с первой строки если выбрали то автоматом выбирается статион пр:
<station2>tpl_novosib1</station2>
.
ХМЛЬ:
<?xml version="1.0" encoding="utf-8"?>
<category>
<city name="Россия" link="db/russia/ac/index.php">
<station2>tpl_rus</station2>
</city>
<city name="Омск" link="acura.php">
<station2>tpl_omsk</station2>
</city>
<city name="Новосибирск" link="acura.php">
<station2>tpl_novosib1</station2>
</city>
</category>