jag har ett formulär med returnerad text i en textarea och vill kunna infoga en symbol eller text vid den aktuella markör-positionen via en länk. Någon som har en patentlösning på detta ? Hittade en lösning själv och efter lite trixande så fick jag det att fungera som jag ville.Infoga text i text
/JuhaSv: Infoga text i text
<code>
<script language=javascript>
<!--
function markSelection ( txtObj ) {
if ( txtObj.createTextRange ) {
txtObj.caretPos = document.selection.createRange().duplicate();
isSelected = true;
}
}
function insertTag ( txtName, tag, enclose ) {
var closeTag = tag;
if ( enclose ) {
var attribSplit = tag.indexOf ( ' ' );
if ( tag.indexOf ( ' ' ) > -1 )
closeTag = tag.substring ( 0, attribSplit );
}
if ( isSelected ) {
var txtObj = eval ( "document.forms[0]." + txtName );
if (txtObj.createTextRange && txtObj.caretPos) {
var caretPos = txtObj.caretPos;
caretPos.text = ( ( enclose ) ? "<"+tag+">"+caretPos.text+"</"+closeTag+">" : "<"+tag+">"+caretPos.text );
markSelection ( txtObj );
if ( txtObj.caretPos.text=='' ) {
isSelected=false;
txtObj.focus();
}
}
} else {
// placeholder for loss of focus handler
}
}
//-->
</script>
<form>
<textarea name="tsttxt" ONSELECT="markSelection(this);" ONCLICK="markSelection(this);" ONKEYUP="markSelection(this);"><input type="button" value="BOLD" onClick="insertTag ( 'tsttxt', 'b', true )"> <input type="button" value="PARAGRAPH" onClick="insertTag ( 'tsttxt', 'p', false )">
</form>
</code>
/Juha