JavaScript区域
在JavaScript区域,可以为显示控件(显示组件)设置JavaScript行为。
对于每个显示控件,可以为每个事件和非事件属性分别设置一个行为。
■ JavaScript描述区域
在此区域,使用JavaScript描述行为。
除了直接从键盘输入外,还可以从代码片段选择框中选择预定义的代码。
有关可以与显示控件一起使用的函数等,请参阅各显示控件的说明页面和通用项页面。
以下字符串不能在脚本中描述:
'localStorage', 'sessionStorage', 'cookie', 'function', 'Function', 'eval', 'window', 'self', 'globalThis', 'document'
■ JavaScript函数
在JavaScript区域,可以使用以下函数:
● 获取显示组件属性的值
retValue = $getProp(idControl, nameOfProperty);
idControl:显示组件的ID。在属性列表的标题中显示为"id=Layer0.LabelH0.0"的部分。
nameOfProperty:属性的名称,列在每个组件的帮助属性列表中。
retValue:获取的值。
JavaScript示例:
value = $getProp("Layer0.LabelH0.0", "Text");
● 设置显示组件属性的值
$setProp(idControl, nameOfProperty, value);
idControl:显示组件的ID。
nameOfProperty:属性的名称,列在每个组件的帮助属性列表中。
value:要设置的值。
JavaScript示例:
// 用JavaScript设置标签组件的显示文本的代码:
$setProp("Layer0.LabelH0.0", "Text", "标签标题");
● 直接调用显示组件的函数
显示组件的JavaScript区域允许您使用"this."直接调用所选显示组件提供的函数。有关显示组件的函数,请参阅组件的帮助。
JavaScript示例:
// 如果标签组件中存在setValue函数,可以如下调用来更改显示文本:
this.setValue(value);
● 获取标签或变量的值
获取CHS标签或本地变量的值。
retValue = $getVar(nameOfVariable, CreateIfNotExist);
nameOfVariable:变量的名称。对于本地变量,它是以任意英文字母开头的字母数字字符串。
对于CHS设备标签,它是格式为"dt:DeviceID.CloudKey:TagName"的变量名。CreateIfNotExist:对于本地变量,指定如果变量不存在是否创建变量。True表示创建变量。通常指定True。
retValue:获取的值。
JavaScript示例:
value = $getVar("AnyVar", True);
value = $getVar("dt:device0.http0:IncInt1", True);
● 设置标签或变量的值
设置CHS标签或本地变量的值。
$setVar(nameOfVariable, value);
nameOfVariable:变量的名称。对于本地变量,它是以任意英文字母开头的字母数字字符串。
对于CHS设备标签,它是格式为"dt:DeviceID.CloudKey:TagName"的变量名。value:要设置的值。
JavaScript示例:
$setVar("AnyVar", 1);
$setVar("dt:device0.http0:IncInt1", 100);
■ JavaScript操作确认按钮
单击此按钮将检查所描述的JavaScript的语法。如果没有问题,它将被启用。在操作模式为“模拟”或“执行”模式时,将执行JavaScript。
■ 操作时间设置复选框
仅在目标是事件时显示。
选中此复选框时,每次事件发生时,JavaScript仅执行一次。
如果未选中,则JavaScript将在基本执行周期中重复执行。
基本执行周期可以从[设置]菜单中进行设置。