我在开关中有这段代码:
case 'php':
$(TextArea).insertRoundTag('pre', htmlOpts, {lang:'php', line:'1'});
break;
结果是,执行的时候,在一个textarea中出现:
<pre lang="php" line="1"></pre>
现在人们可以在 pre 标记之间粘贴代码 如何在 pre 标记之间添加文本“此处代码”并且为蓝色(已选择)?
<pre lang="php" line="1">code here</pre>
最佳答案
要插入“此处代码”文本,只需从文本区域中获取值并将其插入即可。以下代码中的替换仅假设文本区域内的某些 HTML 元素,即不仅仅是例如“pre”标签:
var codeText = "code here";
var oldVal = $(TextArea).val();
$(TextArea).val(oldVal.replace("></", ">" + codeText + "</"));
要选择“此处的代码”文本:
$(TextArea).focus();
var position = $(TextArea).val().indexOf(codeText);
document.getElementById(TextArea).setSelectionRange(position , position + codeText.length);
希望这有帮助!
fiddle :http://jsfiddle.net/ttbjenn2/1/
关于javascript - 如何在前置标签之间添加文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26958150/