在javascript中怎么设置textarea区域内的部分文字的格式??
比如:
<textarea id="content" rows='10' cols='20' style="resize:none">NBA要闻:在今天马刺118-103战胜开拓者的比赛....</textarea>
我想把‘NBA要闻’设为加粗和红色,,,该怎样设置??
可以使用富文本编辑器啊 这博问回答问题这样的就可以满足你的要求 用着也很方便。
常用的编辑器CKeditor,百度的Ueditor等。
textarea在项目中很少用到了 都是用编辑器替代了。
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script type="text/javascript">
//获取选中的内容
function getSelectedText(id) {
var select_field = document.getElementById(id);
word = '';
if (document.selection) {
var sel = document.selection.createRange();
if (sel.text.length > 0) {
word = sel.text;
}
} /*ie浏览器*/
else if (select_field.selectionStart || select_field.selectionStart == '0') {
var startP = select_field.selectionStart;
var endP = select_field.selectionEnd;
if (startP != endP) {
word = select_field.value.substring(startP, endP);
}
} /*标准浏览器*/
return word;
}
//为选中的内容进行加粗改变前景色设置
function ChangeCss(id) {
var t = getSelectedText(id);
if (t.length > 0) {
var content = document.getElementById(id).innerHTML;
content = content.replace(t, "<span style='color:red'><strong>" + t + "</strong></span>");
document.getElementById(id).innerHTML = content;
}
}
</script>
</head>
<body>
<input type="button" id="btn" name="name" value="设置" onclick="ChangeCss('content')" />
<textarea id="content" rows='10' cols='20' style="resize:none">NBA要闻:在今天马刺118-103战胜开拓者的比赛....</textarea>
</body>
</html>
@wolfy: 编辑器我喜欢sublime,不能解决就算了,我可以尽量不用这个标签了。。。。还是谢谢的回答。
设置不了。
把textarea换成HTML编辑器吧
把textarea标签内的html取出来,
把“NBA要闻”取出来,
把“NBA要闻”套一个标签,达到 加粗和红色 的样式,
把这个新生成的标签和 “NBA要闻” 替换
把textarea标签内的html换成新生成的。
具体代码要怎么写啊
@jarson: 这就要你自己好好学了,这些都是基本的
<textarea id="mytext" style="background-color:#CCCCCC;color=red"></textarea>
你这个是把textarea区域都变了,我的意思是只变部分的嘛