Oracle APEX - 如何调用 javascript 函数

问题描述 投票:0回答:1

我想调用一个基于文本输入的函数。这是我的代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <style>
        .message {
            margin-top: 10px;
            color: red;
        }
    </style>
</head>
<body>   
    <div id="uppercase" class="message">Must contain at least one uppercase letter</div>
    <div id="lowercase" class="message">Must contain at least one lowercase letter</div>
    <div id="numeric" class="message">Must contain at least one numeric digit</div>
    <div id="specialchar" class="message">Must contain at least one special character</div>
    
    <script>
        function checkPassword() {
            var password = document.getElementById("P99_NEW_PASSWORD").value;
            var uppercaseMessage = document.getElementById("uppercase");
            var lowercaseMessage = document.getElementById("lowercase");
            var numericMessage = document.getElementById("numeric");
            var specialcharMessage = document.getElementById("specialchar");

            // Reset messages
            uppercaseMessage.style.color = "red";
            lowercaseMessage.style.color = "red";
            numericMessage.style.color = "red";
            specialcharMessage.style.color = "red";

            // Check conditions
            if (/[A-Z]/.test(password)) {
                uppercaseMessage.style.color = "green";
            }
            if (/[a-z]/.test(password)) {
                lowercaseMessage.style.color = "green";
            }
            if (/\d/.test(password)) {
                numericMessage.style.color = "green";
            }
            if (/[!@#$%^&*(),.?":{}|<>]/.test(password)) {
                specialcharMessage.style.color = "green";
            }
        }
    </script>
</body>
</html>

它是这样的:

我想要做的是,当用户在新密码字段中输入密码(即P99_NEW_PASSWORD)时,将调用checkPassword()。但是,我不知道要调用 checkPassword() 函数的内容/位置。 有人能帮忙解决这个问题吗?预先感谢。

javascript html oracle-apex
1个回答
0
投票

这是单个消息的工作示例:

  1. 在页面属性 > 函数和全局变量声明中创建 javascript 函数
        function checkPassword() {
            var password = apex.items.P206_NEW_PASSWORD.getValue();
            var uppercaseMessage = document.getElementById("uppercase");

            // Reset messages
            uppercaseMessage.style.color = "red";

            // Check conditions
            if (/[A-Z]/.test(password)) {
                uppercaseMessage.style.color = "green";
            }
        }
  1. 创建更改 P206_NEW_PASSWORD 的动态操作。
  • 添加“执行 Javascript 代码”类型的真实操作
  • 代码
checkPassword()
  • 取消选中“初始化时触发”
© www.soinside.com 2019 - 2024. All rights reserved.