Hola a todos
Tengo el siguiente problema:
Necesito enviar una variable a otro documento PHP donde pueda manipular los valores de los combobox y de acuerdo a estos realizar selects, esto se debe hacer sin refrescar la pagina html, debido a esto utilizo ajax pero en todos los tutoriales,manuales o foros aparece la misma forma la cual NO ME FUNCIONA, por favor mirar el codigo y decirme que pasa.......
Aqui esta el codigo php con los combox correspondientes, los cuales son realizados con un select.
Código HTML:
<form name="DigitaAfiliacion" action="index.php?seccion=CCFORMU" method="POST">
<table border="3" align="center">
<tr>
<td>
<input type="hidden" name="afiliacion" id="afiliacion" value="">
<table border="0" width="100%">
<tr class="TH1">
<td align="center" colspan="6">
<br><b>FORMULARIO DE AFILIACIÓN E INSCRIPCIÓN REGIMEN CONTRIBUTIVO</br></td>
</tr>
<tr class="TH">
<td>
<b>Tipo Cotizante
</td>
<td>
<-- En el onchange se llama la funcion de javascript o ajax!-->
<select name="TipoCot" id="idTipoCot" style=width:360px onchange="cargarContenido()">
<? creacomboxconarray($arTipoCotizante,$caTipoCot,0,1);?>
</select>
</td>
<-- Aqui aparece los mensajes del innerHTML!-->
<td class="TH" colspan="2"><div id="idajax"></td>
</tr>
<tr class="TH">
<td class="bordes">
<b>Tipo Identificación</div>
</td>
<td>
<select disabled=disabled name="cbTipoId" id="idTipoId"> <?clValidarForma::fnValidarTipoId($arTipoDocumentoAfiliado,$caTipoId);?>
</select>
</td>
<td>
<b>Número
</td>
<td colspan="2">
<input type="text" name="txtNumero" id="idNumero" value="<?pSession($nuNumeroId);?>">
</td>
</tr>
</table>
</form>
Funcion Ajax
Código:
function Ajax()
{
/* Crea el objeto AJAX. Esta funcion es generica para cualquier utilidad de este tipo, por
lo que se puede copiar tal como esta aqui */
var xmlhttp=false;
try
{
// Creacion del objeto AJAX para navegadores no IE
xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
// Creacion del objet AJAX para IE
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(E)
{
if (!xmlhttp && typeof XMLHttpRequest!='undefined') xmlhttp=new XMLHttpRequest();
}
}
return xmlhttp;
}
function cargarContenido(){
//Div donde estaran los innerHTML
var SelectOrigen=document.getElementById('idajax');
// variable para activar un combobox
var SelectDestino=document.getElementById('idTipoId');
//Capturo el valor Seleccionado en el combobox
var Selected=document.getElementById('idTipoCot').options[document.getElementById('idTipoCot').selectedIndex].value;
//Objeto ajax
ajax=Ajax();
ajax.open("POST","pruebas.php"+"?",true);
ajax.onreadystatechange=function() {
if(ajax.readyState==1){
//Escribo en el div
SelectOrigen.innerHTML="Cargando........";
//Activo combobox
SelectDestino.disabled=false;
}
else if (ajax.readyState == 4 ) {
if(ajax.status==200)
{
SelectOrigen.innerHTML = ajax.responseText;
}
else if(ajax.status==404)
{
SelectOrigen.innerHTML = "La direccion no existe";
}
else
{
SelectOrigen.innerHTML = "Error: ".ajax.status;
}
}
}
//Realizo envio diciendo que es una forma
ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
ajax.send('var1='+Selected);
}
Por ultimo este es el php donde quiero capturar las varibles del combobox idTipoCot
Código PHP:
<?
print_r("Post".$_POST);
print_r("Get".$_GET);
print_r("Request".$_REQUEST);
?>
Muchas gracias.