Foros del Web » Programando para Internet » Javascript »

mini aplicación control partidos terminada, gracias x la ayuda, ahí va el code.

Estas en el tema de mini aplicación control partidos terminada, gracias x la ayuda, ahí va el code. en el foro de Javascript en Foros del Web. Bueno, esta en sucio pero ya esta terminada la aplicación para agregar campos input y borrarlos. El ódigo de serie lleva 4 input type="text" para ...
  #1 (permalink)  
Antiguo 04/02/2005, 09:24
Avatar de markshock  
Fecha de Ingreso: abril-2004
Ubicación: Allí, al fondo a la izqui
Mensajes: 316
Antigüedad: 20 años
Puntos: 0
mini aplicación control partidos terminada, gracias x la ayuda, ahí va el code.

Bueno, esta en sucio pero ya esta terminada la aplicación para agregar campos input y borrarlos.

El ódigo de serie lleva 4 input type="text" para insertar el resultado de 2 partidos, pero dispone de un boton "Añadir partido" que lo que hace es agregar 2 inputs mas para agregar el resultado de 1 partido mas.

También tiene el botón para eliminar secuencialmente los inputs insertados.

Código:
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--//
var newsInputs = 0;
var defecto = 4;
function addMatch(){
	var puntero = document.getElementById('nextMatch'); //recogemos donde van a ir los nuevos campos
	newNode = document.createElement('tr'); //creamos un elemento TR para poder agregar TD's
	total = 2; //definimos cuantos inputs queremos insertar de un tiron
	newsInputs++;
	for(i=0;i<total;i++){
		var num_equipo = document.getElementsByName('equipo').length; //recogemos el total de campos equipo que hay para asignar los nuevos ID's
		newNode.appendChild(document.createElement('td')); // creamos un td dentro de newNode
		
		var newField = document.createElement('input'); //creamos un elemento input
		newField.name = 'equipo'; //le asignamos un nombre al input creado
		
		var newEquipo = num_equipo + 1; // incrementamos el total de campos equipos para poder obtener un ID correlativo.

		newField.id = 'equipo'+newEquipo; //asignamos el nuevo ID al nuevo INPUT
		newNode.lastChild.appendChild(newField); //le indicamos de quien va a ser hijo.
		if(i<1){								//si es la primera vez insertamos un TD como separador
			newNode.appendChild(document.createElement('td'));
			newNode.lastChild.appendChild(document.createTextNode('vs'));
		}
		puntero.parentNode.insertBefore(newNode,puntero);	//insertamos todos justo encima del tr con id nextMatch, almacenado en puntero.
	}

	if(newsInputs==1){//añadimos el link de borrar último partido
		newClose = document.createElement('a');
		newClose.id='delPartido';
		newClose.href='javascript:delMatch(this)';
		newClose.appendChild(document.createTextNode('Borrar último'));
		document.getElementById('controlMatch').appendChild(newClose);
	}
	centrarContenido();//centramos el contenido de los TD's para que queden bien alineados

}

function centrarContenido(){
	var y = document.getElementById('tableMatchs').rows;
	for(a=0;a<y.length;a++){
		y[a].align='center';
	}
}

function delMatch(){
	var total = document.getElementsByTagName("tr").length - 1;
	separador = document.getElementById("nextMatch"); 
	separador.parentNode.removeChild(separador.parentNode.childNodes[total]);
	newsInputs --;
	if (newsInputs==0){
		//retirar el código para borrar la última dirección de mail 
		document.getElementById("controlMatch").removeChild(document.getElementById("delPartido"));
	}
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<form method="POST">
<table border="1" width="380" id="tableMatchs" cellspacing="2" cellpadding="1">
	<tr><td align="center"><INPUT TYPE="text" NAME="equipo" id="equipo1"></td><td width="10" align="center">vs</td><td align="center"><INPUT TYPE="text" NAME="equipo" id="equipo2"></td></tr>
	<tr><td align="center"><INPUT TYPE="text" NAME="equipo" id="equipo3"></td><td align="center">vs</td><td align="center"><INPUT TYPE="text" NAME="equipo" id="equipo4"></td></tr>
	<tr id="nextMatch"><td>-</td><td>-</td><td>-</td></tr>
</table>
<br>
<table border="1" width="380">
	<tr><td><center id="controlMatch"><a href="javascript:addMatch();">Añadir partido</a>&nbsp;&nbsp;&nbsp;&nbsp;</center></td></tr>
</table>
</form>
</body>
gracias a tunait, javierB y demás por la ayuda.

Saludos.!!!!!
__________________
Señoooraaaa!! Que camisetas!!!

"Hay 10 tipos de personas, las que piensan en binario y las que no"
_________________________________
  #2 (permalink)  
Antiguo 04/02/2005, 12:06
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Hey, felicidades salió guapa la criatura

...comentarte que explorer devuelve un error que no da mozilla. Al eliminar devuelve un "tipo incorrecto". Lo he mirado un poco por encima y no entiendo qué puede ser lo que no le gusta de esa línea

En mozilla funciona fantástico

Un saludo
  #3 (permalink)  
Antiguo 04/02/2005, 13:17
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola tunait y markshock

Me parece que el error que da IE puede ser porque se está insertando un elemento <tr> dentro de otro elemento <tr> A ver si se me/nos ocurre como solucionarlo.

Saludos,
  #4 (permalink)  
Antiguo 04/02/2005, 13:26
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Hola Javier

en realidad el error lo encuentro sólo en explorer al eliminar, no al agregar
  #5 (permalink)  
Antiguo 04/02/2005, 13:46
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Cita:
Iniciado por tunait
en realidad el error lo encuentro sólo en explorer al eliminar, no al agregar
Si, yo también, pero es lo único "raro" que he visto en el código
  #6 (permalink)  
Antiguo 04/02/2005, 13:49
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
En cambio el mo(r)zilla no tiene problema alguno con el script, lo cual nos lleva, una vez más, a dejar el comentario de que explorer es una mierda


¿se puede decir mierda?
  #7 (permalink)  
Antiguo 07/02/2005, 03:01
Avatar de markshock  
Fecha de Ingreso: abril-2004
Ubicación: Allí, al fondo a la izqui
Mensajes: 316
Antigüedad: 20 años
Puntos: 0
uoooooo! voy a mirarlo en explorer q no lo he mirado..

kaka kakita de explorer... jajaja pedaso de mierdad e navegador... oju...!

gracias x la info.

FELIZ LUNES A TOD@S
__________________
Señoooraaaa!! Que camisetas!!!

"Hay 10 tipos de personas, las que piensan en binario y las que no"
_________________________________
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 14:34.