上面那个是整个文本域都变成了br,我需要在当前光标位置追加一个<br> 怎样做?
请高手指教^^
7 个解决方案
#1
<textarea name="instroduce" cols=60 rows=10 type="text" onkeydown="if(event.keyCode==13) form1.instroduce.value+='<br>'"></textarea>
#2
我要在光标当前位置加入,上面那个是在末尾加入哦
#3
你按回车了,肯定的换行了
#4
但是你写入数据库是没换行的啊,你在文本域回车编辑,写入数据库都变成一行了,网上的字符串replace转换也不行,究竟在文本域按下回车,生成的是什么字符?
#5
没人回答 吗
#6
<script>
function go(){
oTextbox=document.forms[0].ntxt;
oTextbox.focus();
if(document.selection==null){
var iStart = oTextbox.selectionStart;
var iEnd = oTextbox.selectionEnd;
sText=oTextbox.value.substring(iStart, iEnd)
oTextbox.value = oTextbox.value.substring(0, iStart) + sText+"加文字" + oTextbox.value.substring(iEnd, oTextbox.value.length); }
else
{
document.selection.createRange().text+="加文字"
}
}
</script>
这个是可以在两种浏览器下都添加"加文字"的一个函数
在IE中 主要是调用document.selection.createRange()方法
而mozilla中主要是通过selectionStart方法了
function go(){
oTextbox=document.forms[0].ntxt;
oTextbox.focus();
if(document.selection==null){
var iStart = oTextbox.selectionStart;
var iEnd = oTextbox.selectionEnd;
sText=oTextbox.value.substring(iStart, iEnd)
oTextbox.value = oTextbox.value.substring(0, iStart) + sText+"加文字" + oTextbox.value.substring(iEnd, oTextbox.value.length); }
else
{
document.selection.createRange().text+="加文字"
}
}
</script>
这个是可以在两种浏览器下都添加"加文字"的一个函数
在IE中 主要是调用document.selection.createRange()方法
而mozilla中主要是通过selectionStart方法了
#7
这个问题的解决的思路有问题 用js的方法让textarea里面有个<br>是不正确的思路 这样做不好 让访问者看到文本框里面出现<br>? 他不会再删了去? 那样就麻烦多了
最好的办法是存的时候进行转化 用asp里面的replace方法替换字符串 替换\r\n为<br />
'str为你存的textarea里面的值
replace(str,"\r\n","<br />")
#1
<textarea name="instroduce" cols=60 rows=10 type="text" onkeydown="if(event.keyCode==13) form1.instroduce.value+='<br>'"></textarea>
#2
我要在光标当前位置加入,上面那个是在末尾加入哦
#3
你按回车了,肯定的换行了
#4
但是你写入数据库是没换行的啊,你在文本域回车编辑,写入数据库都变成一行了,网上的字符串replace转换也不行,究竟在文本域按下回车,生成的是什么字符?
#5
没人回答 吗
#6
<script>
function go(){
oTextbox=document.forms[0].ntxt;
oTextbox.focus();
if(document.selection==null){
var iStart = oTextbox.selectionStart;
var iEnd = oTextbox.selectionEnd;
sText=oTextbox.value.substring(iStart, iEnd)
oTextbox.value = oTextbox.value.substring(0, iStart) + sText+"加文字" + oTextbox.value.substring(iEnd, oTextbox.value.length); }
else
{
document.selection.createRange().text+="加文字"
}
}
</script>
这个是可以在两种浏览器下都添加"加文字"的一个函数
在IE中 主要是调用document.selection.createRange()方法
而mozilla中主要是通过selectionStart方法了
function go(){
oTextbox=document.forms[0].ntxt;
oTextbox.focus();
if(document.selection==null){
var iStart = oTextbox.selectionStart;
var iEnd = oTextbox.selectionEnd;
sText=oTextbox.value.substring(iStart, iEnd)
oTextbox.value = oTextbox.value.substring(0, iStart) + sText+"加文字" + oTextbox.value.substring(iEnd, oTextbox.value.length); }
else
{
document.selection.createRange().text+="加文字"
}
}
</script>
这个是可以在两种浏览器下都添加"加文字"的一个函数
在IE中 主要是调用document.selection.createRange()方法
而mozilla中主要是通过selectionStart方法了
#7
这个问题的解决的思路有问题 用js的方法让textarea里面有个<br>是不正确的思路 这样做不好 让访问者看到文本框里面出现<br>? 他不会再删了去? 那样就麻烦多了
最好的办法是存的时候进行转化 用asp里面的replace方法替换字符串 替换\r\n为<br />
'str为你存的textarea里面的值
replace(str,"\r\n","<br />")