
<body>
文本框:<input id="txtId" type="text" style="width:25px" />
</body>
<script>
var widthSize = 25; //文本框长度
var size=0; //文本框字符长度
$("#txtId")keyup(function(){
//当前输入的文本比上一次的文本值长度短,就缩减文本框的宽度
if(thisvaluelength<size){
size=$("#txtId")val()length; //获取文本框的字符长度
widthSize=parseInt(widthSize-10); //当前文本宽度-10px
thisstylewidth=widthSize+"px";
return "";
//否则就增加文本框的宽度
}else{
size=$("#txtId")val()length; //获取文本框的字符长度
widthSize=parseInt(widthSize+10); //当前文本宽度+10px
thisstylewidth=widthSize+"px";
return "";
}
});
</script>
写了个小列子运行了下应该是没问题的 你试试
function testleng_(){
var j=1;
var testcontent=$("#testid")val();
if(testcontentlength<15){
alert("不能小于15个字符");
}else{
var like=testcontentcharAt(0);
for(i=1;i<testcontentlength;i++){
var c=testcontentcharAt(i);
if(c==like){
j++;
alert(j);
if(j==5){
alert("不能连续出现5次");
return false;
}
}else{
like=c;
j=1;
}
}
}
}
test:<input id="testid" type="text" class="field text full tooltip" onblur="testleng_()">
1、身份上的区别,basic_string<>有双重身份。一个是代替传统的C字符串,所以应该针对C中的strlen,给出相应的函数length。另外一个身份可用作STL容器,所以要按照STL容器的惯例给出size()。
2、类型上的区别,length是属性,size()是方法。
3、使用上的区别,如果你只是想获取元素的个数,两者效果一样 length 和size() 获取的值是一样的;但是如果是获取字符串的长度就只得用length。
4、编码上的区别,实际情况是length()方法返回的是使用的是UTF-16编码的字符代码单元数量,不一定是实际上我们认为的字符个数。同理codePointCount()方法返回的是代码点个人数,是实际上的字符个数。
因为常用的uniCode字符使用一个代码单元就可以表示,但有些辅助字符需要一对代码单元表示。length()方法计算的是代码单元的数量,codePointCount()方法计算的是代码点数。
5、针对对象的区别, java中的length()方法是针对字符串String说的,如果想看这个字符串的长度则用到length()这个方法java中的size()方法是针对泛型集合说的,如果想看这个泛型有多少个元素,就调用此方法来查看。
使用过程中需要主要获取的高度范围包含 盒子模型中的哪些元素、
height() : 其高度范围是所匹配元素的高度 height;(content 的高度)
innerHeight() : 其高度范围是所匹配元素的高度 height + padding ;
outerHeight() : 其高度范围是所匹配元素的高度height + padding + border ;
outerHeight(true) : 其高度范围是所匹配元素的高度 height + padding + border + margin ;
同理宽度有: width() | innerWidth() | outerWidth() | outerWidth(true)
可以给文本框设置属性,maxlength,这个属性用来限制输入长度的。这个比较简单
jq方法,给文本框绑定个 keyup的事件,这个事件是文本输入时触发的,触发的事件中判断文本长度,过长就不改变文本框信息了。
网页可见区域宽: documentbodyclientWidth
网页可见区域高: documentbodyclientHeight
网页可见区域宽: documentbodyoffsetWidth (包括边线的宽)
网页可见区域高: documentbodyoffsetHeight (包括边线的高)
网页正文全文宽: documentbodyscrollWidth
网页正文全文高: documentbodyscrollHeight
网页被卷去的高: documentbodyscrollTop
网页被卷去的左: documentbodyscrollLeft
网页正文部分上: windowscreenTop
网页正文部分左: windowscreenLeft
屏幕分辨率的高: windowscreenheight
屏幕分辨率的宽: windowscreenwidth
屏幕可用工作区高度: windowscreenavailHeight
屏幕可用工作区宽度: windowscreenavailWidth
方法一:运用String对象下的charAt方法
charAt() 方法可返回指定位置的字符。
代码如下
strcharAt(strlength – 1)
请注意,JavaScript 并没有一种有别于字符串类型的字符数据类型,所以返回的字符是长度为 1 的字符串
方法二:运用String对象下的substr方法
substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符。
代码如下
strsubstr(strlength-1,1)
重要事项:ECMAscript 没有对该方法进行标准化,因此反对使用它。
重要事项:在 IE 4 中,参数 start 的值无效。在这个 BUG 中,start 规定的是第 0 个字符的位置。在之后的版本中,此 BUG 已被修正。
方法三:运用String对象下的split方法
split() 方法用于把一个字符串分割成字符串数组。
代码如下
var str = “123456″;
spstr = strsplit(“”);
spstr[spstrlength-1];
方法四:正则搞定
代码如下
<script type="text/javascript">
//<![CDATA[
var s = "nasofj;n234n41;v";
alert("String: "+s+"nn"+"LastOne: "+sreplace(/^([n])(|n)$/g, "$2"));
//]]>
</script>
首先你要设定好文本框宽度,然后手动输入字符(最好用数字)来确定文本框有中能输入多少个数字。
一个数字、一个英文字母 = 1个字节
一个汉字 = 2个字节
有了以上信息:我们就可以用js或jquery去获取文本框中的文本,计算文本框中有多少个字节。
假设:
文本框宽 = 30像素 实际可以写入10个数字也就是10个字节,多于10就超出文本框的款度。
再假设文本框中输入:123abc字节数
用js通进正则我们找出汉字个数 乘以 2 就是汉字所占的字节,加上非汉字的字符(全角符号也是2个字节),上例中一个有12个字节
我们知道现文本框中 >10字符就超出了文本框宽度。
以上就是关于jquery的输入文本框自动增长,文本框大小自适应输入内容的多少自全部的内容,包括:jquery的输入文本框自动增长,文本框大小自适应输入内容的多少自、javascript,,jquery判断输入文本连续出现重复文字的问题,判断文本长度。、jquery里面.length和.size()有什么区别等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)