Hola como vas? bueno modifique un poco tu codigo y quedo de esta manera:
el formulario.php:
Código PHP:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title></title>
<link rel="stylesheet" type="text/css" href="select_dependientes.css">
<script type="text/javascript" src="GeneraColonias.js"></script>
</head>
<body>
<form name="form1" method="post" action="">
<input type="text" name="txtCodigoPostal" id="txtCodigoPostal">
<input type="button" name="btnBuscarColonia" id="btnBuscarColonia" value="Buscar Colonia" onClick="codigoPostal();">
<div id="divColonias">
<select name="selColonia" id="selColonia">
<option value="-1" selected="selected">Seleccione una colonia</option>
</select>
</div>
</form>
</body>
</html>
el GeneraColonias.js:
Código PHP:
function objetoAjax(){
var xmlhttp=false;
try{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}catch (e){
try{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}catch (E){
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined'){
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
function codigoPostal(){
divResultado = document.getElementById('divColonias');
txtCodigoPostal = document.getElementById('txtCodigoPostal').value; //region
//referencia el objeto ajax, damos el metodo del objeto y el archivo
ajax = objetoAjax();
ajax.open("POST", "GeneraColonias.php", true);
ajax.onreadystatechange = function(){
if (ajax.readyState==4){
divResultado.innerHTML = ajax.responseText
}
}
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//enviamos el valor correspondiente al archivo anteriormente referenciado
ajax.send("txtCodigoPostal="+txtCodigoPostal)
}
y el GeneraColonias.php:
Código PHP:
<?php
include("conexion.php");
$txtCodigoPostal=$_REQUEST['txtCodigoPostal'];
$sql = mysql_query("SELECT * FROM Asentamiento WHERE codigoPostal LIKE '$txtCodigoPostal%' order by asentamientoNombre",$cn);
?>
<select name="selColonia" id="selColonia">
<option value="-1" selected="selected">Seleccione una colonia</option>
<?php
while ($damefila=mysql_fetch_array($sql))
{
?>
<option value="<?php echo $damefila['id_asentamiento']; ?>"><?php echo htmlentities (trim($damefila['asentamientoNombre'])); ?></option>
<?php }?>
</select>
Cualquier duda solo postea.
Saludos y espero te ayude en algo.
Atte.
GinoFL