Recorrer un array asociativo con JS

by Carlos Quintero

HTML

<input type="text" name="prueba" list="lista" onChange="buscarValor();"/>
<datalist id="lista">
  <option value="Caracas"></option>
  <option value="Valencia"></option>
</datalist>
<br>
<hr>
<input type="text" name="id_estado" readonly/>

JavaScript

function buscarValor(){
//cargamos el valor del input autocompletado
var valor = $("input[name=prueba]").val();

//creamos un array con los valores necesarios para la consulta, puede ser incluso hecho con php
var lista = {Valencia:1 , Caracas:2};

//recorremos los valores hasta encontrar el valor deseado
for(var id in lista){

	//una vez encontrado el valor detenemos el bucle e insertamos el valor en el input necesario
	if(id == valor){
  	$("input[name=id_estado]").val(lista[id])
    break;
  }


}


}