[Risolto]copiare testo da textarea dentro paragrafo con js

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Avatar utente
foschia
Prode Principiante
Messaggi: 76
Iscrizione: lunedì 8 settembre 2014, 17:57
Desktop: Mate
Distribuzione: linux mint 17 quiana

[Risolto]copiare testo da textarea dentro paragrafo con js

Messaggio da foschia »

ciao a tutti... chiedo aiuto per questro problema con javascript... praticamente io ho una textarea dove voglio inserire un testo e cliccando su copia dovrebbe copiarmi il testo nel paragrafo sotto... purtroppo il problema è che se il testo è ad esempio di 2 paragrafi quando faccio copia lui mi mette tutto sulla stessa riga...
penso che dovrei aggiungere un <p> </p> al momento in cui c'è inserimento del testo in html ma non funziona...
aiuto... l'avevo già realizzata una cavolata del genere ma non mi ricordo più come...

Codice: Seleziona tutto

<html>
<head>

<script language="javascript">

function scrivi()
	{
		var testo=document.getElementById("testo").value;
		var output=document.getElementById("output");

		output.innerHTML=testo;
		return 0;
	}


function pulisci()
	{
		var pulisci=document.getElementById("output");
		pulisci.innerHTML="";
		return 0;
	}
</script>

</head>


<body >
<form>
<textarea id="testo" maxlength="500" cols="100" rows="10">
ciao 
ciao
</textarea>

<input type="button" value="copia" onclick="scrivi()"/>
<input type="button" value="cancella" onclick="pulisci()"/>

</form>
<p id="output">


</p>
</body>
</html>


Ultima modifica di foschia il giovedì 23 ottobre 2014, 21:24, modificato 1 volta in totale.
<<E' impossibile>>, disse l'orgoglio. <E' rischioso>>, disse l'esperienza.<<E' inutile>> , tagliò la ragione. <<LO FACCIO IO!>> gridò GNU linux...
Avatar utente
SuperStep
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 2037
Iscrizione: lunedì 19 dicembre 2011, 16:26
Desktop: Unity
Distribuzione: Ubuntu 16.04 LTS x86_64
Sesso: Maschile
Località: Somma Vesuviana (NA)

Re: copiare testo da textarea dentro un paragrafo con js...

Messaggio da SuperStep »

Crea il paragrafo e mettigli dentro il testo http://www.w3schools.com/jsref/met_docu ... lement.asp
Ultima modifica di SuperStep il venerdì 24 ottobre 2014, 2:08, modificato 1 volta in totale.
ubuntu 16.04 LTS 64-bit - Memoria: 31,3 Gib - Processore: Intel Core i7-5960X CPU @ 3.00 GHz × 16 - Grafica: AMD Radeon HD 7800 Series - Disco: SSD 256 GB x 4 (RAID 01)
Avatar utente
foschia
Prode Principiante
Messaggi: 76
Iscrizione: lunedì 8 settembre 2014, 17:57
Desktop: Mate
Distribuzione: linux mint 17 quiana

Re: copiare testo da textarea dentro un paragrafo con js...

Messaggio da foschia »

superstep grazie dell'aiuto... ho usato spesso il w3c per aiutarmi... comunque buona l'idea del create element, non l'ho mai usata ma ora noto che è utile...
comunque ho risolto con il tag <pre> testo </pre> mi è venuto il lampo di genio mentre giocavo

Codice: Seleziona tutto

 output.innerHTML= "<pre>" + testo + "</pre>";
ecco, ho aggiunto il tag a javascript e sono riuscito... il colmo è che 2 mesi fa ho creato un mini editor in javascript con il gedit e con funzioni basilari in 2 giorni, oggi in 1 ora e passa mi sono perso via in questo problema...
grazie di tutto, posso mettere "risolto"
<<E' impossibile>>, disse l'orgoglio. <E' rischioso>>, disse l'esperienza.<<E' inutile>> , tagliò la ragione. <<LO FACCIO IO!>> gridò GNU linux...
Avatar utente
SuperStep
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 2037
Iscrizione: lunedì 19 dicembre 2011, 16:26
Desktop: Unity
Distribuzione: Ubuntu 16.04 LTS x86_64
Sesso: Maschile
Località: Somma Vesuviana (NA)

Re: [Risolto]copiare testo da textarea dentro paragrafo con

Messaggio da SuperStep »

inserendo il contenuto in questo modo, potrebbe influire su alcuni nodi dichiarati precedentemente, a volte, per appendere un nuovo elemento, si utilizza il metodo

Codice: Seleziona tutto

output.innreHTML += "<X> blablabla </X>";
questo potrebbe influire su quello che era presente prima in output, facciamo un esempio:

supponiamo che nel nodo output ci siano gia' dei nodi appesi precedentemente, e che su alcuni di questi ci siano messi degli event listener.

quando vai a sostituire il nuovo contenuto appendendolo nel modo precedente, perdi i riferimenti, in quanto, il nuovo output, conterra' si elementi uguale ai precedenti, ma saranno dei nuovi elementi...

ti scrivo un piccolo esempio:

appesi con innerHTML (non funzionera' l'evento)

Codice: Seleziona tutto

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    
    <div id="container">
        <button id="pressme">Press Me!</button>
    </div>
    
    <script>
    
        var container = document.getElementById("container");
        
        var button = document.getElementById("pressme");
        
        button.addEventListener("click", function(){window.alert("pressed");});
        
        container.innerHTML += "<span> press that button </span>";
        
    </script>
    
</body>
</html>
appesi con createElement (funzionera' l'evento).

Codice: Seleziona tutto

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    
    <div id="container">
        <button id="pressme">Press Me!</button>
    </div>
    
    <script>
    
        var container = document.getElementById("container");
        
        var button = document.getElementById("pressme");
        
        button.addEventListener("click", function(){window.alert("pressed");});
        
        var span = document.createElement("SPAN");
        span.innerText = "press that button";
        
        container.appendChild(span);
        
    </script>
    
</body>
</html>
il mio consiglio e' quello di non utilizzare la tecnica che hai utilizzato sopra per ovvie ragioni, pero' se non hai di questi problemi puoi anche utilizzare il primo metodo.
ubuntu 16.04 LTS 64-bit - Memoria: 31,3 Gib - Processore: Intel Core i7-5960X CPU @ 3.00 GHz × 16 - Grafica: AMD Radeon HD 7800 Series - Disco: SSD 256 GB x 4 (RAID 01)
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 9 ospiti