Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 34
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2001
    Messaggi
    855

    aiuto inserimento codice HTMLin textarea

    ciao a tutti
    vorrei selezionare delle parole nel testo di una textarea e con un bottone inserire dei all'inizio ed alla fine della parola selezionata.

    non so come fare.
    Mi potete dare un'idea?

  2. #2
    E' possibile farlo solo in IE; gli altri browser non hanno un metodo per sentire quale testo è selezionato in una textarea, che io sappia.

    codice:
    	function storeCaret ()
    		{
    		if (document.forms[0].elements[3].createTextRange) 
    		document.forms[0].elements[3].caretPos = document.selection.createRange().duplicate();
    		}
    
    	function insertAtCaret (text)
    		{
    		if (document.forms[0].elements[3].createTextRange && document.forms[0].elements[3].caretPos) {
    			var caretPos = document.forms[0].elements[3].caretPos;
    			caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text + ' ' : text;
    			}
    		else
    			document.forms[0].elements[3].value = text;
    		}
    
    	function seltext() 
    		{
    		if (document.getSelection)
    			{
    			var str = document.getSelection();
    			}
    		else if (document.selection && document.selection.createRange)
    			{
    			var range = document.selection.createRange();
    			var str = range.text;
    			}
    		else 
    			{
    			var str = "";
    			}
    		return str;
    		} 
    
    	function docmd(comm) {
    		switch (comm) {
    			case "ACapo":
    				if (seltext()=="")
    					insertAtCaret(" 
    \n");
    				break;
    			case "Titolo" :
    				if (seltext()=="")
    					insertAtCaret(" <div class='titolo'> </div>\n");
    				else
    					insertAtCaret(" <div class='titolo'> " + seltext() + " </div>\n")
    				break;
    			case "STitolo" :
    				if (seltext()=="")
    					insertAtCaret(" <div class='sottotitolo'> </div>\n");
    				else
    					insertAtCaret(" <div class='sottotitolo'> " + seltext() + " </div>\n")
    				break;
    			case "Grass" :
    				if (seltext()!="")
    					insertAtCaret("  " + seltext() + "  ");
    				break;
    			case "Link" :
    				if (seltext()!="") {
    					value=prompt("Inserisci l'indirizzo di destinazione completo di http:// nella casella sottostante","");
    					insertAtCaret("  " + seltext() + "  ");}
    				break;
    			case "Link2" :
    				if (seltext()!="") {
    					value=prompt("Inserisci l'indirizzo di destinazione completo di http:// nella casella sottostante","");
    					insertAtCaret(" [img]img/bull.gif[/img] " + seltext() + "  ");}
    				break;
    			case "Immagine" :
    				if (seltext()=="")
    					insertAtCaret(" <img> ");
    				break;
    			default :
    				break;
    			}
    	}
    
    							<textarea onselect="storeCaret();" onclick="storeCaret();" onkeyup="storeCaret();"></textarea>
    "Le uniche cose che sbagli sono quelle che non provi a fare."
    Atipica

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2001
    Messaggi
    855
    ho provato il tuo codice ma non mi funge.
    cosa sbaglio?

    ho impostato cosi il codice che mi hai postato

    --------------------------------
    <script language="javascript">
    <!--
    TUo CODICE
    //-->
    </script>

    <form name="utenti" method="post" action="invia.asp">
    <textarea onselect="storeCaret();" onclick="storeCaret();" onkeyup="storeCaret();"></textarea>


    <input type="button" name="menu" value="inserisci br">
    </form>
    --------------------------------

  4. #4
    Originariamente inviato da siusky
    ho provato il tuo codice ma non mi funge.
    cosa sbaglio?
    Magari che nel bottone lo devi richiamare il mio codice, se no certo che non fa nulla...

    <script language="javascript">
    <!--
    TUo CODICE
    //-->
    </script>

    <form name="utenti" method="post" action="invia.asp">
    <textarea onselect="storeCaret();" onclick="storeCaret();" onkeyup="storeCaret();"></textarea>


    <input type="button" name="menu" value="inserisci br" onClick="docmd("ACapo");">
    </form>

    Ciao!
    "Le uniche cose che sbagli sono quelle che non provi a fare."
    Atipica

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2001
    Messaggi
    855
    si, hai ragione.

    cmq mi da errore sulla riga
    if (document.forms[0].elements[3].createTextRange)
    dicendomi 'è nullo o non è un'oggetto'

    ho sbagliato qualcosa?

  6. #6
    Utente di HTML.it L'avatar di Kilin
    Registrato dal
    Mar 2003
    Messaggi
    453
    La cosa mi interessa notevolmente.... Ma da errore anche a me!

    help us please

  7. #7
    Ragazzi, ma un minimo di iniziativa non l'avete proprio, eh?

    O vi preparo io la pappa pronta o proprio non riuscite...

    Semplicemente, qui

    codice:
    document.forms[ numero_della_form_contato_da_zero ].elements[ numero_dell_elemento_contato_da_zero ].createTextRange
    dovete correggere i due valori adattandoli alla vostra form.

    Suvvia, un po' di iniziativa!
    "Le uniche cose che sbagli sono quelle che non provi a fare."
    Atipica

  8. #8
    Utente di HTML.it L'avatar di Kilin
    Registrato dal
    Mar 2003
    Messaggi
    453
    Caro Shores, non ho iniziativa perchè non conosco affatto js!

    Conosco PHP e HTML come le mie tasche, lì l'iniziativa ce l'ho... Ma mi ritrovo a dover usare JS per integrazione al mio CMS in PHP... E non ho tempo per impararlo! Capisci?

    In ogni caso non riesco a farlo funzionare

  9. #9
    Ok, postami un link alla pagina completa che ti risolvo il problema!

    Meglio di così...
    "Le uniche cose che sbagli sono quelle che non provi a fare."
    Atipica

  10. #10
    Utente di HTML.it
    Registrato dal
    Oct 2001
    Messaggi
    855
    funziona, ho fatto come dicevi tu.

    posso chiederti una cosa..
    non conosco js,
    mi potresti spiegare la stringa
    document.forms[ numero_della_form_contato_da_zero ].
    elements[ numero_dell_elemento_contato_da_zero ].createTextRange

    che non la capisco?

    ciao e grazie ancora

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 © 2024 vBulletin Solutions, Inc. All rights reserved.