salve a tutti
questo è il codice
codice:
<script type="text/javascript">

function AddToTextarea(TextareaID,TextToAdd,Titolo,TypeText){	
	if(TypeText !=""){
	var L = prompt(Titolo,"");
		if(TypeText != "link"){
			if (L) {
			TextToAdd = '<' + TypeText + '>' + L + '</' + TypeText + '>';
			}
		}	
		else{
		var M = prompt("Inserisci il link","http://");
			if(L){
			TextToAdd= '' + L + '';
			}
			else{
			TexToAdd= '' + M + '';
			}
		}
	}
						
    var MyTextarea = document.getElementById(TextareaID);
    
    if (document.all)
    {
        MyTextarea.focus();
        var MyRange = document.selection.createRange();
        MyRange.colapse;
        MyRange.text = TextToAdd;
    }
   	 else if (MyTextarea.selectionEnd){
        var MyLength = MyTextarea.textLength;
        var StartSelection = MyTextarea.selectionStart;
        var EndSelection = MyTextarea.selectionEnd;
        MyTextarea.value = MyTextarea.value.substring(0, StartSelection) + TextToAdd + MyTextarea.value.substring(EndSelection, MyLength);
    }
    else{
        MyTextarea.value += TextToAdd;
    }

}
</script>
allora la funzione dovrebbe permettermi di aprirmi un prompt a seconda se si preme il pulsante per il grassetto o per il corsivo o sottolineato. aperto il prompt io inserisco ciò che voglio venga formattato. se non c'è nulla non scrive nulla. fin qui va tutto bene.
per il link ho pensato di distinguere aggiungendo un voce alla funzione per cui se typetext è uguale a link il codice dovrà pensare a questo. aprirmi un primo prompt per inserire il titolo del link e un secondo per inserire il link vero e proprio in modo da scrivere il costrutto html <a>
il problema è questo. se compilo tutti i due prompt funziona. se lascio libero il titolo e compilo il link non mi mette come speravo <a href=\"link\">link</a>

deve essere sbagliata la logica del if else
qual'è il problema