Идентификаторы являются особыми, так что вы не можете выбрать индивидуальный один за то, что вы выбрали. Есть много способов сделать это, один из способов - передать событие и прочитать цель.
function sayHelloWorld(event) {
var sel = event.target, //the select that was active
selIndex = sel.selectedIndex,
value = sel.options[selIndex].value;
console.log(selIndex, value);
}
<section>
<select id='myDropDown1' onchange='sayHelloWorld(event)'>
<option value='' disabled selected>CHOOSE ONE</option>
<option id='' value='cows'>COWS</option>
<option id='' value='pigs'>PIGS</option>
<option id='' value='chicks'>CHICKS</option>
</select>
</section>
<section>
<select id='myDropDown2' onchange='sayHelloWorld(event)'>
<option value='' disabled selected>CHOOSE ONE</option>
<option id='' value='cows'>COWS</option>
<option id='' value='pigs'>PIGS</option>
<option id='' value='chicks'>CHICKS</option>
</select>
</section>
Вы можете передать текущий объект с this
function sayHelloWorld(sel) {
var selIndex = sel.selectedIndex,
value = sel.options[selIndex].value;
console.log(selIndex, value);
}
<section>
<select id='myDropDown1' onchange='sayHelloWorld(this)'>
<option value='' disabled selected>CHOOSE ONE</option>
<option id='' value='cows'>COWS</option>
<option id='' value='pigs'>PIGS</option>
<option id='' value='chicks'>CHICKS</option>
</select>
</section>
<section>
<select id='myDropDown2' onchange='sayHelloWorld(this)'>
<option value='' disabled selected>CHOOSE ONE</option>
<option id='' value='cows'>COWS</option>
<option id='' value='pigs'>PIGS</option>
<option id='' value='chicks'>CHICKS</option>
</select>
</section>
Или вы можете добавлять события без обработчика событий рядного
function sayHelloWorld() {
var sel = this,
selIndex = sel.selectedIndex,
value = sel.options[selIndex].value;
console.log(selIndex, value);
}
var sels = document.querySelectorAll('.selNav');
for (var i=0; i<sels.length;i++) {
sels[i].addEventListener("change", sayHelloWorld);
}
<section>
<select class="selNav" id='myDropDown1'>
<option value='' disabled selected>CHOOSE ONE</option>
<option id='' value='cows'>COWS</option>
<option id='' value='pigs'>PIGS</option>
<option id='' value='chicks'>CHICKS</option>
</select>
</section>
<section>
<select class="selNav" id='myDropDown2' >
<option value='' disabled selected>CHOOSE ONE</option>
<option id='' value='cows'>COWS</option>
<option id='' value='pigs'>PIGS</option>
<option id='' value='chicks'>CHICKS</option>
</select>
</section>
Так чем бы вы изменили в console.log линии, чтобы быть
window.location.href = "externalPHPfile.php?w1=" + selIndex + "&w2=" + stuff;
или
window.location.href = "externalPHPfile.php?w1=" + encodeURIComponent(value) + "&w2=" + stuff;
То есть если предположить, что вещество действует в вашем коде, который вам не отображаются.
ids являются единственными. – epascarello