我是FLASH的新手,我需要验证表单中的电子邮件地址。 我的代码是:
validate_btn.onRelease = function() {
indexOfAt = email.text.indexOf("@");
lastIndexOfDot = email.text.lastIndexOf(".");
if (indexOfAt !=-1 && lastIndexOfDot !=-1){
if (lastIndexOfDot <indexOfAt) {
message.text="please verify your email.";
}else {
message.text="Your email seems okay";
}
} else {
message.text="please enter correct email address";
}
}
似乎工作正常唯一的问题是接受了以下电子邮件:myEmail@domain.
和@domain.com
是否有人可以帮我修复它?考虑到它是AS2所以我不能使用RegExp。
谢谢,抱歉我的英语不好。
答案 0 :(得分:1)
你还必须测试
indexOfAt>0
和
lastIndexOfDot<email.text.length-2
请注意,这是一个试用版,代码 UNTESTED
validate_btn.onRelease = function() {
indexOfAt = email.text.indexOf("@");
lastIndexOfDot = email.text.lastIndexOf(".");
if (indexOfAt>0 && lastIndexOfDot !=-1 && lastIndexOfDot<email.text.length-2){
if (lastIndexOfDot <indexOfAt) {
message.text="please verify your email.";
}else {
message.text="Your email seems okay";
}
} else {
message.text="please enter correct email address";
}
}
答案 1 :(得分:0)
http://www.actionscript.org/forums/showthread.php3?t=77605这里有一个解决方案可以在AS2中使用正则表达式
否则你可以尝试
if (
(emailString.indexOf("@") > 0) &&
(emailString.lastIndexOf(".") > (emailString.indexOf("@") + 1)) &&
(emailString.lastIndexOf(".")
){
//valid(ish)
}