Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Formattare textarea

Problemi di HTML? Di PHP, ASP, .NET, JSP, Perl, SQL, JavaScript, Visual Basic..?
Vuoi realizzare programmi in C, C++, Java, Ruby o Smalltalk, e non sai da che parte cominciare?
Entra qui e troverai le risposte!

Moderatori: Triumph Of Steel, archimede

Formattare textarea

Postdi Pubob » 09/03/08 10:44

Ho questo codice che con Firefox funziona bene ma con IE mette a video la formattazione in modo sballato cioè non in sequenza penso sia la parte relativa a IE da correggere.
Vorrei anche fare in modo che formattasse subito senza mettere i tag:

Codice: Seleziona tutto
//Formatta il testo con B, I, U e Color
function insert_tag(codice,argomento2){
var tarea=document.forms.mioform1.messaggio;
tarea.focus();
if(document.selection){                //--------> IE
var selezionato=document.selection;
var rng=selezionato.createRange();
if(rng!=null && (selezionato.type=='Text' || selezionato.type=='None')){
messaggio_trg=rng.text;
}
if(rng!=null && tarea.createTextRange){
tarea.caretPos=rng.duplicate();
}
var caretPos=tarea.caretPos;
if(argomento2){                // --------> colore
caretPos.text='['+codice+'='+argomento2+']'+messaggio_trg+'[/'+codice+']';
}
else{
caretPos.text='['+codice+']'+messaggio_trg+'[/'+codice+']';
}
 }
else if(tarea.selectionStart || tarea.selectionStart=='0'){       //-------- > FF
if(tarea.selectionStart!=tarea.selectionEnd){
var inizio_sel=tarea.selectionStart;
var fine_sel=tarea.selectionEnd;
var messaggio_trg=(tarea.value).substring(inizio_sel,fine_sel);
}
else{
var messaggio_out=prompt('Inserisci il testo da formattare','');
if(messaggio_out!=undefined && messaggio_out!=null && messaggio_out!=''){
messaggio_trg=messaggio_out;
}
else{
messaggio_trg='';
}   
 }
if(messaggio_trg!='' && messaggio_trg!=null){
var inizio_sel=tarea.selectionStart;
var fine_sel=tarea.selectionEnd;
var inizio=(tarea.value).substring(0,inizio_sel);
var fine=(tarea.value).substring(fine_sel,tarea.textLength);
if(argomento2){              //---------> colore
tarea.value=inizio+'['+codice+'='+argomento2+']'+messaggio_trg+'[/'+codice+']'+fine;
}
else{
tarea.value=inizio+'['+codice+']'+messaggio_trg+'[/'+codice+']'+fine;
}
 }
  }
else{              //--------> altri Browser
var messaggio_out=prompt('Inserisci il testo da formattare','');
if(messaggio_out!=undefined && messaggio_out!=null && messaggio_out!=''){
tarea.value+='['+codice+']'+messaggio_out+'[/'+codice+']';
}
else{
tarea.value+='['+codice+'][/'+codice+']';
}
 }
tarea.focus();
}
Pubob
Newbie
 
Post: 1
Iscritto il: 29/01/08 22:57

Sponsor
 

Torna a Programmazione


Topic correlati a "Formattare textarea":


Chi c’è in linea

Visitano il forum: Nessuno e 6 ospiti