字段动作 - 用户输入时

 概述

用户输入时是一个客户端动作,当由用户或通过脚本修改字段的值时调用它。它用于提高表单的可用性,方法是在表单数据提交之前验证它或基于在此字段中指定的值来显示其他字段值。“用户输入时”脚本在更改数据库中保存的数据之前执行。

在以下情况下,用户输入时脚本将不会调用:

  • 如果字段的值没有变化(即,如果设置的新值与旧值相同)。 
  • 如果字段使用视图中的自定义动作来更新。

 语法

On User Input
{
// 指定要执行的 deluge 代码

}

 示例

假设在一个邮箱地址字段的表单中,一个人只可以注册一次相同的邮箱地址。此验证可在邮箱地址字段的用户输入时事件中完成。Ajax 请求会发送至服务器以验证邮箱地址。如果相同的邮箱地址已存在,则会显示错误消息。

Deluge 代码段

if (count(Register[emailid == input.emailid]) > 0)
{
input.emailiderror = “This email id already exists”;
show emailiderror;
}

上面的代码添加到邮箱地址字段的用户输入时块。在上面的代码中,emailiderror 是“添加备注”字段类型。当表单加载时此字段不显示。当用户输入注册表单中已存在的邮箱地址 时, emailiderror 字段显示指定的错误消息。