选取textarea中的指定行
【实例描述】
使用控件的focus或select方法,可以很方便地选取textarea的所有内容,但却无法实现某行的选取。本例讲解如何选取textarea中的指定行。
【实例代码】
<function getTxtRow(num, mytxt) //获取指定行的方法-第二个参数为文本框ID
{
//获取文本框内当前光标的位置
var range = document.getElementById(mytxt).createTextRange()
var rect = range.getClientRects()//返回一个矩形
var left = rect[0].left
if(num >rect.length - 1 || num <0)
return
if(num == 0) //选择第一行的情况
{
//设置选择范围
var right = rect[0].right
range.moveEnd("character",-range.text.length)
while(range.offsetLeft + range.boundingWidth <right)
{
range.expand("character")
}
return range
}
else
{
//设置选择范围
var right = rect[num].right
var range = getTxtRow(num - 1, mytxt)
range.moveStart("character",range.text.length + 1)
while((range.offsetLeft + range.boundingWidth) <right)
{
range.expand("character")
}
if(range.offsetLeft >left)
range.moveStart("character",-1)
return range
}
}
//选择指定行数的方法
function getText(num)
{
var range = getTxtRow(num,"txt")//调用真正的获取行方法
if(range != null)//如果指定的行内容不为空
{
alert(range.text)
range.select() //选择指定的行
}
}
</SCRIPT>
本文实例讲述了JS简单限制textarea内输入字符数量的方法。分享给大家供大家参考。具体如下:这里演示JS限制一个area内的字符不能超过255,多余则截取。
代码如下:
<script>
function
getStringUTFLength(str)
{
var
value
=
str.replace(/[\u4e00-\u9fa5]/g,"
")
//将汉字替换为两个空格
return
value.length
}
function
leftUTFString(str,len)
{
if(getStringUTFLength(str)<=len)
{
return
str
}
var
value
=
str.substring(0,len)
while(getStringUTFLength(value)>len)
{
value
=
value.substring(0,value.length-1)
}
return
value
}
function
count()
{
var
len=255
var
value
=
document.getElementById("licenseother").value
if(getStringUTFLength(value)>=len)
{
document.getElementById("licenseother").value
=
leftUTFString(document.getElementById("licenseother").value,len)
}
document.getElementById("result").value
=
len-getStringUTFLength(document.getElementById("licenseother").value)
}
</script>
<table
width="100%">
<tr>
<td>
<textarea
cols=100
rows=4
id="licenseother"
onkeypress="count()"
onkeyup="count()"
onblur="count()"
onChange="count()"></textarea>
</td>
</tr>
<tr>
<td>
本输入框限制输入255个字符(汉字计算为2个字符)
剩余字符数:
<input
readonly
type="text"
size="3"
id="result"
value="255">
</td>
</tr>
</table>
希望本文所述对大家的JavaScript程序设计有所帮助。