我对文本字段进行了验证。按下提交页面按钮后,我希望验证检查下面的代码,如果失败则返回plsql文本。一旦验证返回null(如同没有问题),就应该发生提交后处理。问题是,提交后的过程仍然发生,验证只生成>> ELSE RETURN'电子邮件地址无效';而不是任何其他的,例如如果字段中没有文字,则电子邮件地址无效。哦,我也有一个服务器端条件在字段上工作时单击按钮。
非常感谢帮助。谢谢。
编辑:感谢您的编辑。在我忘记将它添加到这篇文章之前,我确实已经拥有了BEGIN。问题仍在继续。
BEGIN
IF (INSTR(:P101_NEW_2, '@gmail.com') > 0) THEN RETURN NULL;
ELSIF (INSTR(:P101_NEW_2,'@hotmail.com) > 0) THEN RETURN NULL;
ELSIF (INSTR(:P101_NEW_2,'@yahoo.com') > 0)THEN RETURN NULL;
ELSIF (:P101_NEW_2 = NULL) THEN RETURN 'Input Email Address';
ELSIF (INSTR(:P101_NEW_2, '@gmail.com') < 1) OR (INSTR(:P101_NEW_2,'@hotmail.com') < 1) OR (INSTR(:P101_NEW_2,'@gmail.com') < 1) THEN RETURN 'Input Email Address';
ELSE RETURN 'Invalid email address';
END IF;
COMMIT;
END;
答案 0 :(得分:0)
我相信我已经解决了。它使用PL / SQL函数进行验证(返回文本)。我没有创建一个函数,你可以从上面的代码中看到。我将创建一个函数并包含该代码,让您知道我是如何进行的。
答案 1 :(得分:0)
电子邮件地址验证通常会验证格式,但这取决于您。
viewDidLayoutSubviews
验证的目标是true / null,因此如果出现问题,则根据类型返回false或显示消息。
如果您比较not REGEXP_LIKE(:P1_EMAIL, '^[^.]([a-zA-Z0-9_''\+\.\-]+)[^.]@[a-zA-Z0-9_\-]+(\.[a-zA-Z0-9\-]+)*(\.[a-zA-Z]{2,})$')
,它将始终返回false。什么都不是= null。它应该是:P1_EMAIL = null
你的倒数第二个条件也可能是:P1_EMAIL is null
,因为你已经检查了内容和无效。
如果您有声明或异常部分,则只需要开始/结束。
您很少需要在APEX中提交。