JSFiddle - React, Tailwind, and code Playground
HTML
<span>Estado</span>
<br>
<select id='estado' onchange="escolha()">
<option value=''>- Selecione um Estado -</option>
<option value='sp'>SP</option>
<option value='rj'>RJ</option>
</select>
<br>
<br>
<span>Cidade</span>
<br>
<select id='cidade' disabled="true">
<option value=''>- Selecione uma Cidade -</option>
</select>
JavaScript
var arr_cidades = {
sp: ["Sorocaba", "Boituva", "TatuĂ"],
rj: ["Uma cidade do Rio", "Outra cidade"]
}
function escolha() {
var estado = document.querySelector("#estado");
var cidade = document.querySelector("#cidade");
cidade.disabled = false;
cidade.innerHTML = "";
switch (estado.value) {
case "sp":
for (i in arr_cidades.sp) {
cidade.innerHTML += "<option>" + arr_cidades.sp[i] + "</option>"
};
break;
case "rj":
for (i in arr_cidades.rj) {
cidade.innerHTML += "<option>" + arr_cidades.rj[i] + "</option>"
};
break;
default:
cidade.innerHTML += "<option>- Selecione uma cidade -</option>";
cidade.disabled = true;
}
}