function borrarImagen(id){ if (confirm('¿Desea borrar esta imagen?')){ var url = "ajax_borrar_img.php"; var pars = "id="+id; var ajax = new Ajax.Request( url, { parameters: pars, method:"get", onLoaded: EfectoBorrar('img'+id) } ); } } function borrarFila(idempleado){ var url = "borrar.php"; var pars = "borrar=ajax&id="+idempleado; var ajax = new Ajax.Request( url, { parameters: pars, method:"get", onLoaded: EfectoBorrar("fila_"+idempleado) } ); } function EfectoBorrar(fila){ new Effect.Highlight(fila); new Effect.Fade(fila); } function loadAction(){ var forms = $$('form'); var fields; var done; for(var i=0; i < forms.length; i++){ form_name = forms[i].cloneNode(false).getAttribute('name'); fields = document.forms[form_name].elements; for(var j=0; j < fields.length; j++){ ValidacionBlur(fields[j].getAttribute('name'),form_name); } } } function ValidacionBlur(fieldref,form_name) { var the_field = document.forms[form_name].elements[fieldref]; //setup onBlur feature; if(the_field.isArray && the_field[0].type){ field_type = the_field[0].type; } else { if(the_field.type){ field_type = the_field.type.toLowerCase(); } } if((the_field.tagName == "INPUT" && (field_type == "text" || field_type == "password")) || the_field.tagName == "TEXTAREA"){ Event.observe(the_field, 'blur', function(){ chequeaInput(the_field,form_name); }); } if(the_field.tagName == "SELECT"){ Event.observe(the_field, 'blur', function(){ chequeaInput(the_field,form_name); }); Event.observe(the_field, 'change', function(){ chequeaInput(the_field,form_name); }); } if(the_field.tagName == "INPUT" && field_type == "checkbox"){ Event.observe(the_field, 'click', function(){ chequeaInput(the_field,form_name); }); } if(the_field.tagName == "INPUT" && field_type == "checkbox"){ Event.observe(the_field, 'blur', function(){ chequeaInput(the_field,form_name); }); Event.observe(the_field, 'click', function(){ chequeaInput(the_field,form_name); }); Event.observe(the_field, 'change', function(){ chequeaInput(the_field,form_name); }); } if(typeof the_field.nodeType == "undefined"){ for(a=0; a < the_field.length; a++){ if(!radio_name){ var radio_name = the_field[a].getAttribute('name'); } Event.observe(document.forms[form_name].elements[radio_name][a], 'click', function(){ chequeaInput(the_field,form_name); }); } } } function eliminaEspacios(cadena) { // Funcion equivalente a trim en PHP var x=0, y=cadena.length-1; while(cadena.charAt(x)==" ") x++; while(cadena.charAt(y)==" ") y--; return cadena.substr(x, y-x+1); } function chequeaInput(input,form_name) { var name_input = input.name; var e_input = 'e_'+name_input; // Nombre del campo donde se mostrarĂ¡ el error // Si existe e_input comprobar el error if($(e_input)){ var valorInput= input.value; var url = JS+'ajax_testerror.php?test='+name_input; var pars = name_input+"="+valorInput; var ajax = new Ajax.Updater( "e_"+name_input, url, { parameters: pars, method:"post" } ); } } function nuevoAjax() { /* 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; } // Declaro los selects que componen el documento HTML. Su atributo ID debe figurar aqui. var listadoSelects=new Array(); listadoSelects[0]="select1"; listadoSelects[1]="select2"; listadoSelects[2]="select3"; listadoSelects[3]="select4"; function buscarEnArray(array, dato) { // Retorna el indice de la posicion donde se encuentra el elemento en el array o null si no se encuentra var x=0; while(array[x]) { if(array[x]==dato) return x; x++; } return null; } function eliminaEspacios(cadena) { // Funcion equivalente a trim en PHP var x=0, y=cadena.length-1; while(cadena.charAt(x)==" ") x++; while(cadena.charAt(y)==" ") y--; return cadena.substr(x, y-x+1); } function cargaContenido(idSelectOrigen) { // Obtengo la posicion que ocupa el select que debe ser cargado en el array declarado mas arriba var posicionSelectDestino=buscarEnArray(listadoSelects, idSelectOrigen)+1; // Obtengo el select que el usuario modifico var selectOrigen=document.getElementById(idSelectOrigen); // Obtengo la opcion que el usuario selecciono var opcionSeleccionada=selectOrigen.options[selectOrigen.selectedIndex].value; // Si el usuario eligio la opcion "Elige", no voy al servidor y pongo los selects siguientes en estado "Selecciona opcion..." if(opcionSeleccionada==0) { var x=posicionSelectDestino, selectActual=null; // Busco todos los selects siguientes al que inicio el evento onChange y les cambio el estado y deshabilito while(listadoSelects[x]) { selectActual=document.getElementById(listadoSelects[x]); selectActual.length=0; var nuevaOpcion=document.createElement("option"); nuevaOpcion.value=0; nuevaOpcion.innerHTML="Selecciona Opción..."; selectActual.appendChild(nuevaOpcion); selectActual.disabled=true; x++; } } // Compruebo que el select modificado no sea el ultimo de la cadena else if(idSelectOrigen!=listadoSelects[listadoSelects.length-1]) { // Obtengo el elemento del select que debo cargar var idSelectDestino=listadoSelects[posicionSelectDestino]; var selectDestino=document.getElementById(idSelectDestino); // Creo el nuevo objeto AJAX y envio al servidor el ID del select a cargar y la opcion seleccionada del select origen var ajax=nuevoAjax(); ajax.open("GET", "select_dependientes_3_niveles_proceso.php?select="+idSelectDestino+"&opcion="+opcionSeleccionada, true); ajax.onreadystatechange=function() { if (ajax.readyState==1) { // Mientras carga elimino la opcion "Selecciona Opcion..." y pongo una que dice "Cargando..." selectDestino.length=0; var nuevaOpcion=document.createElement("option"); nuevaOpcion.value=0; nuevaOpcion.innerHTML="Cargando..."; selectDestino.appendChild(nuevaOpcion); selectDestino.disabled=true; } if (ajax.readyState==4) { selectDestino.parentNode.innerHTML=ajax.responseText; } } ajax.send(null); } } Event.observe(window, 'load', function(){ loadAction(); });