Javascript 字符的控制输入

我想Javascript实现控制表单文本格式输入,比如再某些情况输入到文本框的是Email地址,只能输入"@",".","_"以及数字和字母,当输入其他字符的时候没有反映... 我想Javascript实现控制表单文本格式输入,比如再某些情况输入到文本框的是Email地址,只能输入"@",".","_"以及数字和字母,当输入其他字符的时候没有反映,不显示在文本框内。
请高手把代码写下来,写清楚点。写好了可以加分。谢谢
二楼说的不错,可是,还是没有完整的写出来,很遗憾还是出不来效果
展开
 我来答
阳光上的桥
2008-04-09 · 知道合伙人软件行家
阳光上的桥
知道合伙人软件行家
采纳数:21423 获赞数:65813
网盘是个好东东,可以对话和传文件

向TA提问 私信TA
展开全部
二楼的方法完全正确,你把这一行保存为html文件即可在IE中打开查看效果,现在提问的人越来越让人无语了。我把下面一行粘贴到记事本里面保存为html文件,在IE6上打开确实有效果:

<input type="text" onkeypress="return(event.keyCode==46||event.keyCode==95||(event.keyCode>=64&&event.keyCode<=90)||(event.keyCode>=97&&event.keyCode<=122)||(event.keyCode>=48&&event.keyCode<=57))" />

注意要复制、粘贴,不要自己输入错误了又说别人的没效果,在你的页面上需要控制输入内容的地方,可以插入上面的onkeypress="..."部分即可,比如你原来是<input type="text" name="emai" l/>那么插入后成为<input type="text" name="email" onkeypress="..." />即可。

还有自以为是的高级经理,替换和输入限制各有所长,不能说哪个好,如果楼主喜欢替换,那么用下面的代码:
<input type="text" onblur="this.value=this.value.replace(/[^0-9a-zA-Z@_\-]+/,'')";>
木木的哥哥
2008-04-09 · TA获得超过638个赞
知道小有建树答主
回答量:384
采纳率:0%
帮助的人:0
展开全部
<script type="text/javascript">
function filter(event){
var e = event || window.event;
var code = e.charCode || e.keyCode;
if(String.fromCharCode(code)=="@")return(!/@/.test(document.getElementById('txt').value)) //只能输入一个@
return(/[\w@\.]/.test(String.fromCharCode(code)))
}
</script>
<input type="text" onkeypress="return filter(event)" id="txt" />

光限制输入是不能判断email是不是合法的,所以考虑实用性,提交的时候还是要检测一下。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
SouTek
2008-04-14 · TA获得超过2187个赞
知道小有建树答主
回答量:613
采纳率:0%
帮助的人:786万
展开全部
<input onkeyup="this.value=this.value.replace(/[^a-zA-Z0-9._@]/g,'')" onafterpaste="this.value=this.value.replace(/[^a-zA-Z0-9._@]/g,'')" style="ime-mode:disabled">

搞定.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pebsi
2008-04-03 · TA获得超过618个赞
知道小有建树答主
回答量:555
采纳率:0%
帮助的人:426万
展开全部
上面的回答都不够好
最好是用正则表达式加replace功能实现喽,以前记得的,但现在忘了哟
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
su176
2008-04-03 · TA获得超过209个赞
知道答主
回答量:178
采纳率:0%
帮助的人:0
展开全部
<script language="javascript">
<!--
function add(){
if (document.form1.mail.value.indexOf("@",0) < 0 || document.form1.mail.value.indexOf(".",0) < 0)
{
alert("邮箱地址错误!")
return false;
}
}
//-->
</script>

<form name="form1" action="" method="post" onSubmit="return add();" >
<input type="text" name="mail">
</form>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
loveandkissyou
2008-04-03 · TA获得超过2297个赞
知道大有可为答主
回答量:2332
采纳率:0%
帮助的人:2540万
展开全部
2楼答的不错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式