An cursorposition einfügen - gibt wert 3x aus !?

Sebigf

Erfahrenes Mitglied
Hallo zusammen!

Ich habe das Script von con-f-use bei mir einmal eingebaut, und habe es bereits etwas angepasst. Soweit so gut, aber ich habe wohl irgendwo einen Fehler drin. Es geht dabei darum, dass beim IE der "markierte" wert mit dem Tag umlegt werden soll. Das funktioniert soweit auch, aber es wird immernoch der wert vor und hinter dem tag gelegt.

Eingabe: 123

Ausgabe:
HTML:
123123123


Ich hoffe mir kann einer helfen, da dass der letzte Punkt ist, welcher nicht ganz funktioniert.

## Ich habe die Funktion mit theform und field erweitert, damit ich es dynamischer einsetzen kann. ##

Hier der Code:

Code:
function insertBB(strTxt,strTag,strTag2)
   {
   		var row = false;
   		if (!strTxt) {
   			if (strTag == 'url')
 		 	row = prompt('Bitte einen Linkname angeben (optional):\n', '');
   			if (strTag == 'email')
 		 	row = prompt('Bitte einen Namen für die E-Mail an (optional):\n', '');
 		 		 		
 			strTxt = prompt('Bitte geben Sie Ihren Text ein, der formatiert werden soll:\n['+strTag+'] text [\/'+strTag+']', strTag2);
   		}
   		if(strTxt=='http://') return '';
 		return '['+ strTag + (row ? '='+ strTxt : '') +']'+ (row ? row : strTxt) +'[\/'+ strTag +']';
   }
   
   
   function bbcode(theform,field,strTag,strTag2)
   {
   		var	objEditor = theform;
   		var blnIe = theform.selection;
   		var intStart = objEditor.selectionStart;
   
   		objEditor.focus();
   		if(blnIe) {
   			var sel = blnIe.createRange();
   			sel.field = insertBB(sel.field,strTag,strTag2);
   			blnIe.select();
   		} else{
   			intEnd = objEditor.selectionEnd;
 			objEditor.value = objEditor.value.substring(0,intStart) + 
 			insertBB( objEditor.value.substring(intStart,intEnd), strTag, strTag2 ) + 
 			objEditor.value.substring(intEnd,objEditor.value.length);
   		}
   }

Danke
 
Also was mir auf Anhiehb auffällt:
Code:
var sel = blnIe.createRange();
   sel.field = insertBB(sel.field,strTag,strTag2);
 blnIE.select()
Wieso um alles in der Welt hast du "sel.text" durch "sel.field" ersetzt? Die Eigenschaft heißt nunmal "text" und "field" gibt es nicht. Auch das "blnIE.select()" gehört da nicht rein.

Ansonsten kann ich nur sagen: Mein Original funktioniert im IE fehlerfrei, also leigt der Fehler bei deiner Adaption. Such selber und benutz dein Hirn, die JS-Konsole und Javascriptwissen (ggf. aneignen).

Das sage ich, weil du die gleiche Frage schon in einem anderen Thread gestellt hast und ich dir gesagt habe, du bekommst eine Antwort, wenn ich "aus der Uni heimkomm", jetzt machst du aber wieder extra einen Thread auf und müllst aus Ungeduld einfachdas Forum zu.

Ich hoffe du verstehst, dass ich da nicht wirklich Bock habe dir weiter zu helfen und dass dieser Thread recht sinnlos ist sollte dir klar sein, denn wer dir helfen will wird mit annähernd gleicher Wahrscheinlichkeit den alten Thread lesen und dir vor mir antworten, mit der er auch diesen neuen Thread liest. Also bitte schone unsere Nerven und stelle in Zukunft die gleiche Frage nur ein mal.
 
Zuletzt bearbeitet:
Zurück