Foros del Web » Programando para Internet » Javascript »

formulario donde se crean algunos campos coon javascript

Estas en el tema de formulario donde se crean algunos campos coon javascript en el foro de Javascript en Foros del Web. Buenas, intento hacer lo siguiente: 1 crear un input y un textarea cada vez que pincho en "agregar linea" (esto lo he conseguido) 2 quiero ...
  #1 (permalink)  
Antiguo 07/07/2009, 06:58
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 10 meses
Puntos: 8
formulario donde se crean algunos campos coon javascript

Buenas, intento hacer lo siguiente:

1 crear un input y un textarea cada vez que pincho en "agregar linea" (esto lo he conseguido)

2 quiero que al enviar mi formulario a otra página que lo recibe , lleguen todos los campos del formulario (aquí es donde algo hago mal).

El tema es que usando PHP para comprobar los valores recibidos através del form, compruebo que me llegan todos menos los del formulario cargado con javascript ( hago var_dump($_POST) ), y muestra todas las variables enviadas menos las javascript:

Este es mi código Javascript:

Código:
document.curso.nombre.focus();

  // Variable de conteo de "Divs"
  var count = 0;

  // Funcion que agrega una nueva linea

  function addLinemodulos(){
    // Se agrega un numero al conteo
    count += 1;

    // Div donde se agregara la nueva linea
 var content = document.getElementById('Divmod');
// Se crea un nuevo "DIV" que se agregara a content

 var divIdName = 'my' + count + 'Div';

  var newDiv = document.createElement('div');

//le damos el nombre al id
    newDiv.setAttribute('id', divIdName);

// Se crea un nuevo "INPUT" para el nombre
    var newInput = document.createElement('input');

    newInput.type = 'text';

    newInput.size = '50';

    newInput.name = 'nombre[]';


 // Se crea un nuevo "INPUT" para la descripción
	var newTextarea = document.createElement('textarea');

   // newInput2.type = 'text';

    newTextarea.cols = '45';
    newTextarea.rows='2';
    newTextarea.name = 'descript[]';



    // Se crea un Link para poder borrar la linea

    var newDelete = document.createElement('a');

    newDelete.href = 'javascript:delLinemod("' + divIdName + '")';

    newDelete.innerHTML = '<small>Borrar Linea</small>';



    // Se agrega el "INPUT" y el link al "DIV"

    newDiv.appendChild(newInput);
    newDiv.appendChild(newInput).value="Nombre";
	newDiv.appendChild(newTextarea);
    newDiv.appendChild(newTextarea).value="Descripción";

    newDiv.appendChild(newDelete);

    content.appendChild(newDiv);

  }



  // Se borra la linea solicitada

  function delLinemod(div){

    var content = document.getElementById('Divmod');

    var remove = document.getElementById(div);

    content.removeChild(remove);

  }



function addLineobjetivos(){

    // Se agrega un numero al conteo

    count += 1;

    // Div donde se agregara la nueva linea

    var content = document.getElementById('Divobj');



    // Se crea un nuevo "DIV" que se agregara a content

    var divIdName = 'my' + count + 'Div';

    var newDiv = document.createElement('div');

    newDiv.setAttribute('id', divIdName);

    // Se crea un nuevo "INPUT"

    var newInput = document.createElement('input');

    newInput.type = 'text';

    newInput.size = '50';

    newInput.name = 'myInputobj[]';

    // Se crea un Link para poder borrar la linea

    var newDelete = document.createElement('a');

    newDelete.href = 'javascript:delLineobj("' + divIdName + '")';

    newDelete.innerHTML = '<small>Borrar Linea</small>';

    // Se agrega el "INPUT" y el link al "DIV"

    newDiv.appendChild(newInput);

    newDiv.appendChild(newDelete);

    content.appendChild(newDiv);

  }

  // Se borra la linea solicitada

  function delLineobj(div){

    var content = document.getElementById('Divobj');

    var remove = document.getElementById(div);

    content.removeChild(remove);

  }

function Validar(){

	if (document.curso.nombre.value == ""){

		alert('Introduzca un nombre del curso')

		document.curso.nombre.focus()

		return false

	}

	else {

	}
}
function Validar2(Cadena){

	var Fecha= new String(Cadena)	// Crea un string

	var RealFecha= new Date()	// Para sacar la fecha de hoy

	// Cadena Año

	var Ano= new String(Fecha.substring(Fecha.lastIndexOf("/")+1,Fecha.length))

	// Cadena Mes

	var Mes= new String(Fecha.substring(Fecha.indexOf("/")+1,Fecha.lastIndexOf("/")))

	// Cadena Día

	var Dia= new String(Fecha.substring(0,Fecha.indexOf("/")))



	// Valido el año

	if (isNaN(Ano) || Ano.length<2){

        	alert('Año inválido')

			document.noticia.fechanoticia.focus()

		return false

	}

	// Valido el Mes

	if (isNaN(Mes) || parseFloat(Mes)<1 || parseFloat(Mes)>12){

		alert('Mes inválido')

		document.noticia.fechanoticia.focus()

		return false

	}

	// Valido el Dia

	if (isNaN(Dia) || parseInt(Dia, 10)<1 || parseInt(Dia, 10)>31){

		alert('Día inválido')

		document.noticia.fechanoticia.focus()

		return false

	}

	if (Mes==4 || Mes==6 || Mes==9 || Mes==11 || Mes==2) {

		if (Mes==2 && Dia > 28 || Dia>30) {

			alert('Día inválido')

			document.noticia.fechanoticia.focus()

			return false

		}

	}

	if (document.noticia.noticia.value == ""){

		alert('Introduzca la noticia')

		document.noticia.noticia.focus()

		return false

	}

}
Y este es el trozo del form donde carga el div

Código:
<tr>
                <td colspan="3"><a href="javascript:addLinemodulos();">  Agregar Linea +</a><br>

					<div id="Divmod"></div></td>
     <tr>
Gracias de antemano

Última edición por Dundee; 08/07/2009 a las 05:06 Razón: error sintaxis
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:27.