Ответ на вопрос 1
<select>
<option >---</option>
<option value="1">Пункт 1</option>
<option value="2">Пункт 2</option>
<option value="3">Пункт 3</option>
</select>
<select>
<option >---</option>
<option value="1">Пункт 1</option>
<option value="2">Пункт 2</option>
<option value="3">Пункт 3</option>
</select>
<select>
<option >---</option>
<option value="1">Пункт 1</option>
<option value="2">Пункт 2</option>
<option value="3">Пункт 3</option>
</select>
<script>
var sel = document.getElementsByTagName('select');
for(var i = 0;i < sel.length; i++) {
sel[i].onchange = function(e) {
if(e.target.value == "---") {
var opt=document.getElementsByTagName('option');
for(var j = 0;j < opt.length; j++) {
opt[j].removeAttribute("hidden");
}
}
else {
for(var j = 0;j < sel.length; j++) {
if(e.target != sel[j]) {
sel[j].querySelector('option[value="' + e.target.value + '"]').setAttribute("hidden", "hidden");
}
}
}
}
}
</script>
Вопрос 2 не осилил