Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    63

    Aggiungere righe ad una tabella

    Ciao a tutti sto cercando di aggiungere righe ad una tabella solo che non succede nulla chi mi può aiutare il codice della pagina html è il seguente:

    codice:
    
    <body>
    	<?php include 'intestazione.php'; ?>
    	<div>
    		<form id="numC" name="numC">
    			<table summary="aggiungi_Rimuovi" >
    				<tr>
    					<td>
    						<label> Aggiungi o Rimuovi righa  </label>
    					</td>
    					<td>
    						<input type="submit" id="add" name="add" value="AGGIUNGI" onclick="aggiungi()"> </input>		
    						<input type="submit" id="remove" name="remove" value="RIMUOVI" onclick="rimuovi()"></input>
    					</td>				
    				</tr>
    			</table>
    		</form>	
    	</div>
    	<div id="divTab">
    		<form id="addContact" name="addContact">
    			<table summary="Inserisci Contatti" border="2" id="InsContatti">					
    				<tr>
    					<th>Email</th>					
    					<th>Nome</th>		
    					<th>Cognome </th>
    					<th>Telefono </th>
    					<th>Cellulare </th>
    					<th>Fax </th>					
    					<th>Citta </th>
    					<th>Indirizzo </th>
    					<th>Sito Web </th>
    					<th>Visibilita </th>				
    				</tr>
    			</table>		
    		</form>
    	</div>
    </body>

    Invece il codice della funzione (script esterno) aggiungi è il seguente:

    codice:
    function aggiungi()
    {
    		var arrayTR = document.getElementById('InsContatti').getElementsByTagName('tr');
    		var numTR = arrayTR.length;		
    		numTR = numTR + 1;		
    			
    		
    		//creo riga
    		
    		var row = document.createElement("tr");		
    		
    		//creo le celle per la tabella
    				
    		var cellE = document.createElement("td");
    		var cellN = document.createElement("td");
    		var cellCn = document.createElement("td");
    		var cellT = document.createElement("td");
    		var cellC = document.createElement("td");
    		var cellF = document.createElement("td");
    		var cellCt = document.createElement("td");
    		var cellI = document.createElement("td");
    		var cellS = document.createElement("td");
    		var cellV = document.createElement("td");
    		
    		//creo i campi per le celle
    		
    		var oFieldE=document.createElement("INPUT");
    		var oFieldN=document.createElement("INPUT");
    		var oFieldCn=document.createElement("INPUT");
    		var oFieldT=document.createElement("INPUT");
    		var oFieldC=document.createElement("INPUT");
    		var oFieldF=document.createElement("INPUT");
    		var oFieldCt=document.createElement("INPUT");
    		var oFieldI=document.createElement("INPUT");
    		var oFieldS=document.createElement("INPUT");
    		var oFieldV=document.createElement("SELECT");
    		
    		//setto gli attributi dei campi
    		
    		oFieldE.setAttribute("type","text");
    		oFieldE.setAttribute("name","Email"+numTR);
    		
    		oFieldN.setAttribute("type","text");
    		oFieldN.setAttribute("name","Nome"+numTR);
    		
    		oFieldCn.setAttribute("type","text");
    		oFieldCn.setAttribute("name","Cognome"+numTR);
    		
    		oFieldT.setAttribute("type","text");
    		oFieldT.setAttribute("name","Telefono"+numTR);
    		
    		oFieldC.setAttribute("type","text");
    		oFieldC.setAttribute("name","Cellulare"+numTR);
    		
    		oFieldF.setAttribute("type","text");
    		oFieldF.setAttribute("name","Fax"+numTR);
    		
    		oFieldCt.setAttribute("type","text");
    		oFieldCt.setAttribute("name","Citta"+numTR);
    		
    		oFieldI.setAttribute("type","text");
    		oFieldI.setAttribute("name","Indirizzo"+numTR);
    		
    		oFieldS.setAttribute("type","text");
    		oFieldS.setAttribute("name","Sito"+numTR);	
    		
    		oFieldV.setAttribute("name","Visibilita"+numTR);
    		oFieldV.options[0] = new Option("","");
    		oFieldV.options[1] = new Option("PUBBLICA","PUBBLICA");
    		oFieldV.options[2] = new Option("PRIVATA","PRIVATA");
    		oFieldV.options[3] = new Option("PROTETTA","PROTETTA");
    		
    		//Appenodo i campi alle celle
    				
    		cellE.appendChild(oFieldE);	
    		cellN.appendChild(oFieldN);
    		cellCn.appendChild(oFieldCn);
    		cellT.appendChild(oFieldT);
    		cellC.appendChild(oFieldC);
    		cellF.appendChild(oFieldF);
    		cellCt.appendChild(oFieldCt);
    		cellI.appendChild(oFieldI);
    		cellS.appendChild(oFieldS);
    		cellV.appendChild(oFieldV);
    		
    		//Appendo le celle alla riga
    		
    		row.appendChild(cellE);
    		row.appendChild(cellN);
    		row.appendChild(cellCn);
    		row.appendChild(cellT);
    		row.appendChild(cellC);
    		row.appendChild(cellF);
    		row.appendChild(cellCt);
    		row.appendChild(cellI);
    		row.appendChild(cellS);
    		row.appendChild(cellV);
    		
    		
    		alert(numTR);
    		document.getElementById('InsContatti').appendChild(row);		
    		
    		
    
    
    
    
    		
    
    }
    Ho fatto un debug con un alert è ho notato che nella funzione entra solo che mi crea la riga e immediatamente dopo sparisce.....chi mi può aiutare?

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Probabilmente è perché usi dei tasti submit preposti all'invio del form comunque
    <input type="submit" id="add" name="add" value="AGGIUNGI" onclick="aggiungi()"> </input>
    <input type="submit" id="remove" name="remove" value="RIMUOVI" onclick="rimuovi()"></input>
    cambiali con tipo button e dovrebbe funzionare.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.