ayuda con formularios
#1
Escrito 21 julio 2013 - 09:49
quiero hacer un formulario dinámico me base en la pag de http://elpoli.delphi...mpos-dinamicos/ y lo trate de hacerlo, pero dentro de ese formulario tengo que hacer otro ya que mi problema es que en el primer formulario van los datos de mi profesor como nombre, apellido etc etc, después dentro de ese formulario un profesor puede tener o no asesorías para los alumnos en cual debe de tener campos de día, hora de inicio de asesoría, hora fin de asesoría y no se como hacerlo... espero y me puedas ayudar, lo trate de hacer como el de la pag pero necesito identificar las asesorías de cada profesor así como de sus datos ya que mi idea es mandar la información a un archivo xml ... en mi archivo html hice esto :
obvio el script es este [java]
<SCRIPT src="js/pruebaprofesores.js"></SCRIPT>
............
..............
............
<h2>Datos del profesor</h2>
<br>
<form id="formdinamico" name="formdinamico" action="prueba.php">
<a href='JavaScript:agregarCampoProfesor();'> Agregar Profesor </a>
<div id="contenedorcampos">
</div>
<input type="submit" value="Guardar" name="Guardar">
</form>
...........................................................................................
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Luego en mi archivo pruebaprofesores.js esta esto:
var Nombre = 0;
var ApellidoPaterno = 0;
var ApellidoMaterno = 0;
var Oficina = 0;
var Email = 0;
var Aulavirtual = 0;
function agregarCampoProfesor(){
Nombre = Nombre 1;
ApellidoMaterno = ApellidoMaterno 1;
ApellidoPaterno = ApellidoPaterno 1;
Oficina = Oficina 1;
Email = Email 1;
Aulavirtual = Aulavirtual 1;
var NvoCampo= document.createElement("div");
NvoCampo.id= "divcampo_" (Nombre);
NvoCampo.innerHTML=
"<h5> Campos a llenar del Profesor: " Nombre " </h5>"
"<div class='input-prepend' >"
" <span class='add-on'>Nombre : </span>"
" <input type='text' size='10' placeholder='Aqui va el Nombre' name='nomb" Nombre "' id='Nombre" Nombre "'>"
" <br />"
" <br />"
" <span class='add-on'> Apellido Paterno:</span>"
" <input type='text' size='5' placeholder='Aqui va el Apellido Paterno ' name='apat" ApellidoPaterno "' id='Apellido Paterno" ApellidoMaterno "'>"
" <br />"
" <br />"
" <span class='add-on'> Apellido Materno:</span>"
" <input type='text' size='5' placeholder='Aqui va el Apellido Materno' name='Apellido Materno" ApellidoMaterno "' id='Apellido Materno" ApellidoPaterno "'>"
" <br />"
" <br />"
" <span class='add-on'> Oficina:</span>"
" <input type='text' size='5' placeholder='Oficina de asesoria' name='Oficina" Oficina "' id='oficina" Oficina "'>"
" <br />"
" <br />"
" <span class='add-on'> Email:</span>"
" <input type='text' size='5' placeholder='Email' name='Email" Email "' id='Email" Email "'>"
" <br />"
" <br />"
" <span class='add-on'> Aula Virtual:</span>"
" <input type='text' size='5' placeholder='Aulavirtual' name='Aulavirtual" Aulavirtual "' id='Aulavirtual" Aulavirtual "'>"
" <br />"
"<li class='divider'></li>"
"</div>"
" <blockquote>"
" <h5>ASESORIAS</h5>"
" <a href='JavaScript:agregarCampo(Nombre);'> Agregar Asesorias </a>"
" </blockquote>"
" <a href='JavaScript:quitarCampo(" Nombre ");'> Quitar Profesor </a>"
" <br />"
" <br />"
" </blockquote>";
var contenedor= document.getElementById("contenedorcampos");
contenedor.appendChild(NvoCampo);
}
function quitarCampo(iddiv){
var eliminar = document.getElementById("divcampo_" iddiv);
var contenedor= document.getElementById("contenedorcampos");
contenedor.removeChild(eliminar);
}
var dia = 0;
var inicio = 0;
var hasta = 0;
var lugar = 0;
function agregarCampo(Nombre){
dia = dia 1;
inicio = inicio 1;
hasta = hasta 1;
lugar = lugar 1;
var NvoCampo= document.createElement("div");
NvoCampo.id= "divcampo_" (dia);
NvoCampo.innerHTML=
"<blockquote>"
"<h5> Campos de asesoria del Profesor: " Nombre "</h5>"
"<div class='input-prepend' >"
" <span class='add-on'>Día:</span>"
" <input type='text' size='10' placeholder='Aqui va el día' name='" Nombre "dia" dia "' id='dia" dia "'>"
" <br />"
" <br />"
" <span class='add-on'> inicio:</span>"
" <input type='text' size='5' placeholder='inicio de asesoria' name='" Nombre "de" inicio "' id='inicio" inicio "'>"
" <span class='add-on'> fin:</span>"
" <input type='text' size='5' placeholder='fin de asesoria' name='" Nombre "hasta" hasta "' id='hasta" hasta "'>"
" <br />"
" <br />"
" <span class='add-on'> lugar:</span>"
" <input type='text' size='5' placeholder='lugar de asesoria' name='" Nombre "lugar" lugar "' id='lugar" hasta "'>"
"</div>"
" <br />"
" <br />"
" <a href='JavaScript:quitarCampo(" dia ");'> Quitar Asesoria</a>"
" <br />"
" <br />"
" </blockquote>";
var contenedor= document.getElementById("contenedorcampos");
contenedor.appendChild(NvoCampo);
}[/java]
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
El problema es que la parte de asesoría lo tuve que poner afuera del form ya que no me daba si lo metía en la parte de "" div class='input-prepend' "" ..... ah también a la hora de quitar en profesor debe de quitar lo campos de asesoría, cosa que no hace ya que como asesoría está fuera del form no lo hace....... espero y me puedas ayudar....... de ante mano gracias por el tiempo de leerlo
#2
Escrito 22 julio 2013 - 07:57
Saludos.
#3
Escrito 22 julio 2013 - 10:02
#4
Escrito 22 julio 2013 - 10:21
hola... te acabo de enviar un correo con los archivos para ver si los puedes revisar gracias por tu tiempo y espero y me puedas ayudar
Claro que si, con mucho gusto. En la noche los reviso por que en este momento me encuentro en el trabajo y se me complica un poco. Revisandolos posteo la solución aquí mismo.
un saludo.
#5
Escrito 23 julio 2013 - 08:12
[java]
.......
" <h5>ASESORIAS</h5> "+
" <a href='JavaScript:agregarCampo(Nombre);'> Agregar Asesorias </a>" +
" </blockquote> " +
" <div id='continterno_" + Nombre + "'></div>"+
[/java]
Como puedes ver, después del enlace a la llamada de agregar asesorias he agregado un contenedor dinámico. Será allí donde deberás incluir los datos de la asesoría. Para ello tu método agregarCampo quedaría de la siguiente manera:
[java]function agregarCampo(Nombre){
dia = dia + 1;
inicio = inicio +1;
hasta = hasta + 1;
lugar = lugar + 1;
var NvoCampo= document.createElement("div");
NvoCampo.id= "divcampoasesoria_"+(dia);
NvoCampo.innerHTML=
"<blockquote>"+
"<h5> Campos de asesoria del Profesor: "+Nombre+"</h5>"+
"<div class='input-prepend' >"+
" <span class='add-on'>Día:</span>"+
" <input type='text' size='10' placeholder='Aqui va el día' name='" +Nombre+ "dia" + dia + "' id='dia" + dia + "'>" +
" <br />"+
" <br />"+
" <span class='add-on'> inicio:</span>"+
" <input type='text' size='5' placeholder='inicio de asesoria' name='" +Nombre+ "de" + inicio + "' id='inicio" + inicio + "'>" +
" <span class='add-on'> fin:</span>"+
" <input type='text' size='5' placeholder='fin de asesoria' name='" +Nombre+ "hasta" + hasta + "' id='hasta" + hasta + "'>" +
" <br />"+
" <br />"+
" <span class='add-on'> lugar:</span>"+
" <input type='text' size='5' placeholder='lugar de asesoria' name='" +Nombre+ "lugar" + lugar + "' id='lugar" + hasta + "'>" +
"</div>"+
" <br />"+
" <br />"+
" <a href='JavaScript:quitarCampoAsesoria(" + dia + ");'> Quitar Asesoria</a>"
" <br />"+
" <br />"+
" </blockquote>";
var contenedor= document.getElementById("continterno_" + Nombre);
contenedor.appendChild(NvoCampo);
}[/java]
donde como puedes ver el nuevo contenedor dinámico es referenciado:
var contenedor= document.getElementById("continterno_" + Nombre);
Archivos adjuntos
#6
Escrito 23 julio 2013 - 05:22
#7
Escrito 23 julio 2013 - 05:34
cuando gustes yo o cualquiera de nuestros amigos seguro ayudaran.
Saludos.
#8
Escrito 24 julio 2013 - 03:44
#9
Escrito 24 julio 2013 - 04:27
#10
Escrito 24 julio 2013 - 04:42
[js]
function quitarCampoAsesoria(iddiv){
var eliminar = document.getElementById("divcampoasesoria_"+iddiv);
var contenedor= document.getElementById("continterno_" +Nombre);
contenedor.removeChild(eliminar);
}[/js]
y ya corre bien .....
#11
Escrito 24 julio 2013 - 04:48
#12
Escrito 24 julio 2013 - 11:12
primero mmm cómo puedo incluir un filechooser en un formulario en un campo que se llama LINK del archivo aparece un cuadro de texto el cual debe de ser llenado con la ruta que el usuario escriba pero para eso se debe de crear un filichooser no ?? el cual me va a dar la posibilidad de buscar el archivo requerido y una ves seleccionado me ebe de aparecer en m cuadro de texto la ruta para que hasta que haga click un el boton guardar se almacene.....
segundo mmm en otro campo tengo un apartado de "resumen "el cual pretende ser muy grande ya que va a ir el resumen del tema .... pensaba hacerlo con un cuadro de texto pero con scroll y no se si se pueda hacr dentro de mi .js como las etiquetas que se muestran......y obvio guardar todo el resumen una sola variable para mandarlo a mi archivo XML
tercero .... el apartado tema ... tiene posibilidad de agregar subtemas ... mm es como el de profesores con sus asesorías pero para este apartado el problema es que los subtemas tienen la posibilidad de agregar subsubtemas o recursos educativos , dentro de subsubtemas también se encuentra la posibilidad de agregar recursos educativos y dentro de los recursos educativos hay un apartado de "tipo", el cual sólo tiene 3 posibilidades ya sea "ejemplo o practica o ejercicio" para esta parte pensaba elaborarla como un menu donde el usuario elige uno de los tres posibles campos (como el que esta ahorita en la parte de arriba para escribir un mensaje en el foro, el botó nde Icono que puedes elegir "Standar o Lamp o Angry "....... ) y supongo que se debe de identificar de alguna manera cada uno de esas opciones en mi .js no ??? y los contenedores de cada uno también son muchos ... y no se si se pueda hacer como el de profesores y asesorías ya que se pueden quitar uno por uno pero si quito un subtema en idea se debería quitar todos sus subsubtemas y sus recursos educativos y el problema pues aparentemente creció un buen ya que no se si tomarla cada uno de los formularios por separado y unirlos como me comentaste o que onda .............................espero y me puedas ayudar me la pase toda la tarde buscando información y haciendo pruebas pero no me queda .... espero y me puedas ayudar .....de ante mano gracias y disculpa las molestias que te ocasiono .......... es mi tercer día con .js y html .....
#13
Escrito 25 julio 2013 - 07:44
espero y me puedas ayudar me la pase toda la tarde buscando información y haciendo pruebas pero no me queda .... espero y me puedas ayudar .....de ante mano gracias y disculpa las molestias que te ocasiono .......... es mi tercer día con .js y html .....
Lo ideal mi amigo es que por cada duda se genere un nuevo hilo de preguntas y respuestas. Esto para que a otros con el mismo problema pueda ayudarles las soluciones planteadas. También te recomiendo usar títulos descriptivos en los títulos de cada nuevo hilo. Así entre todos podremos ayudarte mejor.
No es ninguna molestia amigo mio, como he dicho previamente, el espíritu de esta comunidad es precisamente ayudarnos los unos a los otros.
#14
Escrito 24 junio 2014 - 02:29