我正在寻找一种处理以下用例的方法。 用户可以输入电话号码或电子邮件地址,以便在离子应用程序中获取密码重置令牌。我无法将UI更改为具有两个字段,因为BA不会接受它。以下屏幕截图显示了MOCK UI:
问题:1。由于只有一个输入字段如何验证用户是否输入了电话号码或电子邮件地址?是否有任何明确的正则表达式?
由于只有一个输入而是两种不同类型的数据,如何决定模型?我应该只有一个类型字符串的模型(字段),并在UI验证后使用相同的内容,或者我应该使用两个不同的领域作为这种情况的模型?
另一个挑战是在输入有效的电子邮件地址或输入电话号码时启用提交按钮。电话号码可以是国际类型。
答案 0 :(得分:1)
试试这个
var input = "your angular model input";
var emailReg = /^([w-.]+@([w-]+.)+[w-]{2,4})?$/;
if(emailReg.test(input))
{
$emailModel = input;
} else {
var mobileRegex = /[0-9 -()+]+$/;
if((input.length > 6) && (intRegex.test(input)))
{
$mobileModel = input;
}
}