我有一个页面项目P1_USERNAME,当用户输入一些文本时,我想在提交页面之前清除不允许的文本。
假设用户输入sra>{563<在输入完成后,文本应类似于sra,清除'a‘之后的所有输入,因为>被定义为无效。
发布于 2017-07-14 00:41:18
您希望使用动态Action - Change类型,该类型在字段更改后失去焦点时触发。然后,您将执行JavaScript代码以响应解析和替换文本的事件。Docs here。
Change (change) -当控件失去输入焦点并且它的值在获得焦点后被修改时触发。支持的用户界面类型:台式机和jQuery移动智能手机。
指定当先前指定的事件发生且满足条件时执行的操作:
执行JavaScript代码-使您能够定义或调用特定于页面的自定义JavaScript代码,以在动态操作框架中使用。如果您正在定义仅特定于一个页面的JavaScript代码,则还可以使用新的页面级别属性函数和全局变量声明来定义它。这里定义的函数和变量随后可以从该操作中引用。
您需要所有这些客户端-因此解析和替换必须在您编写的JS函数中完成。
如果你想得到超级花哨,使用动态操作键按下并监视正在输入的字符。如果他们输入了无效字符,您可以弹出一条JS消息,防止他们键入更多错误字符: Key Press (keypress) -当按下键盘上的某个键时触发,导致输入文本。当您要捕获实际的文本输入时,请使用此事件。
发布于 2017-07-13 23:04:42
您可以使用提交后触发的计算,并使用PL/SQL表达式,如下所示:
case when instr(:P1_USERNAME,'>') > 0
then substr(:P1_USERNAME, 1, instr(:P1_USERNAME,'>')-1)
else :P1_USERNAME
end这将在提交之后但在其他处理之前触发。
如果您的计算需要更复杂,您可以将代码移动到包函数,并进行如下计算:
my_pkg.cleanup (:P1_USERNAME)https://stackoverflow.com/questions/45072263
复制相似问题