如何在表单中限止字符长度

starwu 2003-03-14 10:05:32
比如可以输入20个英文半角字符,或者10中文字符。
要求输完以后,以后输入没有反映。
...全文
72 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
林仪明 2003-03-16
  • 打赏
  • 举报
回复
9494!同意flyingghost(游魂)
flyingghost 2003-03-16
  • 打赏
  • 举报
回复
输入字符和汉字都是算一个unicode,没有字节和字的差别。
<input>中可以用maxlength函数,但无法防止用户直接粘贴一大堆进来。
<textarea>可以用这样的函数来限制:
<SCRIPT LANGUAGE="JavaScript">
function textCounter(field, countfield, maxlimit)
{
if (field.value.length > maxlimit)
field.value = field.value.substring(0,maxlimit);
else
countfield.value = maxlimit - field.value.length;
}
</script>

<form name=form1 action="" method=post>
<textarea name=content cols=42 rows=6 onKeyDown="textCounter(this.form.content,this.form.remLen,200);" onKeyUp="textCounter(this.form.content,this.form.remLen,200);"></textarea>
<br>最长可输入200字,还剩<input readonly type=text name=remLen size=3 maxlength=3 value="200" class=t1>字。
<br><input type=submit value="提交"> <input type=reset value="重写">
</form>
还有就是在表单提交时判断长度。
为防止用户自造页面绕过表单验证js,最好在服务器端再判断一次,或者干脆截了好了。
starwu 2003-03-16
  • 打赏
  • 举报
回复
我想在JS限止...

回:<input type="text" name="w" size="20"><input type="submit" name="B1" onclick="if(w.value.replace(/[^\x00-\xff]/g,'**').length>20)alert('不准超过20个字节')">


这样如果用户是拷贝,粘贴的就可以不受限止了。
我想要,用户输入超过14个字符,以后输入的,全部不管。
然后在表单提交事件中,再次判断字符长度。
8host 2003-03-16
  • 打赏
  • 举报
回复
那样好麻烦啊 不如text=left(request("text"),i) i为你想要的字符长度
fason 2003-03-16
  • 打赏
  • 举报
回复
匹配汉字
waterboy 2003-03-16
  • 打赏
  • 举报
回复
/[^\x00-\xff]/g 是什么意思?
谢谢!
fason 2003-03-16
  • 打赏
  • 举报
回复
<input type="text" name="w" size="20"><input type="submit" name="B1" onclick="if(w.value.replace(/[^\x00-\xff]/g,'**').length>20)alert('不准超过20个字节')">

starwu 2003-03-14
  • 打赏
  • 举报
回复
回楼上的
MAXLENGTH=20
那中文字符也可以输入20个了...
caoshangfei 2003-03-14
  • 打赏
  • 举报
回复
maxlength=20

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧