当前位置: 代码迷 >> JavaScript >> 操作用js获取textarea的值,该怎么处理
  详细解决方案

操作用js获取textarea的值,该怎么处理

热度:154   发布时间:2012-03-28 15:40:03.0
操作用js获取textarea的值
像csdn的编辑器,按一下按钮就给选中的内容两边加上UBB,我用var sel=document.getElementById("editArea").select();获取textarea中的值,但是想要在两边加上UBB,就不行了。是document.getElementById("editArea").value=""+sel.text+"";这样写吗?这样写不行,用.value也不行,我真不知道该怎么弄,在网上搜了很久也找不到答案,麻烦哪位高手帮帮我,谢谢。

------解决方案--------------------
探讨
我用的就是你这个方法,可是不行
function getEditor()
{
return document.getElementById("editArea");
}
//加粗
var boldflag=false;
function Bold()
{
getEditor().focus();
var sel=getEditor().document.select();
if(!boldflag)
{
getEditor().value=" <b>"+sel.text+" </b>";

boldflag=true;
}
else
{
getEditor().value=sel.text;
boldfl…

------解决方案--------------------
没这么复杂吧:

<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C/DTD XHTML 1.1//EN"
"http://www.w3c.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3c.org/1999/xhtml">
<head>
<title>title</title>
</head>
<script type="text/javascript">
function done()
{
e = document.getElementById('ta');
alert( e.firstChild.nodeValue)
}
</script>
<body>
<textarea id="ta" cols="10">123456789</textarea>
<br/>
<input type="button" value="加[U]" onclick="done();" />
</body>
</html>
------解决方案--------------------
e = document.getElementById('ta');
alert( e.firstChild.nodeValue);
  
var newNode=document.createElement("b");
newNode.appendChild(e.firstChild);
e.appendChild(newNode);
------解决方案--------------------
<html xmlns="http://www.w3c.org/1999/xhtml">
<head>
<title>title</title>
</head>
<script type="text/javascript">
function done()
{

e = document.getElementById('ta');
var s = document.selection.createRange();
if (s.parentElement() == e){
s.text = ""+s.text+""
}
}
</script>
<body>
<textarea id="ta">123456789</textarea>
<br/>
<input type="button" value="加[U]" onclick="done();">
</body>
</html>

------解决方案--------------------
或者
HTML code
script type="text/javascript">
function done()
{
e = document.getElementById('ta').select();;
var s = document.selection.createRange().text;
document.getElementById('ta').innerHTML= "[U]"+s+"[/U]"
}
</script>
<body>
<textarea id="ta">123456789</textarea>
<br/>
<input type="button" value="加[U]" onclick="done();">

------解决方案--------------------
剪切版一般都是以flash作为桥梁来兼容FF

相关的介绍和例子你可以搜索GOOGLE
  相关解决方案