1

我正在尝试制作注册表单,我只想在其中注册特定域的电子邮件。例如,我只想注册来自 companyX、companyY、companyZ 的电子邮件。

因此,可接受的电子邮件将是:-

  • myname@companyZ.com
  • 我的名字@companyY.com
  • 我的名字@companyX.com

知道如何在 JQuery 中做到这一点吗?

更新

这是我写的,到现在为止

($input)

if (
     (preg_match("/^\S+@companyX\.com$/i", $input) ||
     (preg_match("/^\S+@companyY\.com$/i", $input) ||
     (preg_match("/^\S+@companyZ\.com$/i", $input)
   ) {

}
else {
      //Error.
}

谢谢

4

2 回答 2

4

一封电子邮件只会包含一个 @,因此您可以拆分输入值并获取第二部分

str = str.split('@').slice(1);

然后只需检查它是否在您的可接受列表中

var allowedDomains = [ 'x.com', 'y.com', 'z.com' ];

if ($.inArray(str[0], allowedDomains) !== -1) {
    //acceptable
}else{
    //not acceptable
}

这是 jsfiddle 中的一个工作示例:http: //jsfiddle.net/UwmYK/2/只需输入电子邮件并单击运行。

于 2013-09-04T15:44:27.980 回答
0

如果您的输入文本框只接受电子邮件地址的第一部分,然后有一个选择框,其中只有您希望允许用户从中选择的电子邮件域,该怎么办?

于 2013-09-04T15:28:17.787 回答