变量的使用
Update time:2025-06-06 18:57:34
系统的很多地方都可以使用变量:
- 富文本框:
富文本框
是问卷编辑器
中获得输入光标后边框会变成紫色
的输入框,可以插入变量。插入后的变量会以不同颜色的标签显示出来,以区别普通的输入内容。 - 选项引用:在
选项引用
弹出的变量面板中选择变量。 - 图片选择器:图片选择器中能使用图片变量。
获得光标后,边框变成
蓝色
的输入框是普通输入框,不能插入变量。
变量选择器
使用变量需要用到变量选择器
,在富文本框中输入@
符号,

或者点击选项引用按钮,都会弹出变量选择器
。顶部的筛选输入框中输入关键字,可以对变量进行筛选。

变量选择器
会列出当前位置可以使用的所有变量。变量选择器会按以下顺序依次显示:
-
系统变量分组:包含所有系统变量,系统变量说明参见系统变量。
-
显式变量分组:按变量类型分类,把问卷的
显式变量
分到多个显式变量
分组中,每一组中都会包含变量面板中添加过的对应类型的变量。 -
所有节点的隐式变量分组:节点名列表中的每个节点都能输出一堆变量,这些变量就是
隐式变量
,具体说明参见隐式变量。
列表项目前面带颜色的小点代表这个变量的类型,不同颜色标记对应不同的变量类型。鼠标覆盖在某个项目组上面,会列出该项目组下面的变量子集列表,如果某个变量子集又包含更多的变量,则鼠标覆盖在该子集上又能看到里面的下级变量列表。
项目名称右侧带
>
符号的项目表示其内部包含更多的变量。
在富文本框中使用变量
在富文本框中输入@
符,弹出变量选择器
面板。
点击某个变量项目,这个变量就会被插入当前富文本框
,在问题文字、选项文字等富文本输入框中插入变量,答题过程中变量会被解析成真实的值。
例如,可以在问题文字中插入系统变量/基本/问卷 id
,在完整预览中可以看到这个变量被解析成当前问卷的问卷 ID
;可以在问题文字中插入从之前某个选择题中提取的变量MULTIPLE_CHOICE/全部选项/选项数量
,在完整预览
中可以看到,当在这道题目选中某些选项后,后面题目中这个变量的值会解析为之前题目中选中选项的数量。
除了可以插入到问题内容中,很多用于控制题目特性的属性也可以插入变量,如多选题的最大数和最小数、允许输入字符最大数等控制条件。当这些地方使用了变量时,会先把控制条件解析出具体的值,然后再对这些值再进行验证。
数值拨动控件
数值拨动控件
是系统的特殊的数值设定控件,在某些条件下,会切换为富文本框
形式接收变量。数值拨动控件
控件的右侧会有个小按钮,点击按钮切换输入模式,支持以下模式:
- 小按钮上显示
N
:数值输入模式,直接输入数值; - 小按钮上显示
V
:变量输入模式,数值输入框会切换成富文本框
,然后用在富文本框中插入变量的方式输入变量。
例如,开启选择题的多选控制,会看到设置最大和最少数值的输入框就是数值拨动控件
。
在控件输入框的右边,会有 2 个上下箭头的按钮,点击按钮或者在输入框内按键盘的上下方向键,以递增、递减的方式修改输入框内的数值。如果同时辅以按住
Shift
或Alt
键,递增递减的幅度会发生变化。
在选项引用中使用
节点除了可以添加选项外,还可以通过变量从之前的节点引用选项,把之前题目的全部或部分选项内容拿过来当成自己的选项,这个行为叫做选项引用
。
点击选项引用
按钮,在弹出的变量选择器
中选择某个变量后,会在右侧编辑栏的选项设置面板中生成一个选项引用
设置项。每个设置项会生成对应的引用选项
,点击选项引用
配置项右侧的小箭头按钮,打开面板查看生成了多少引用选项
,且可以分别设定这些引用选项
的附加设置。可以添加多个选项引用
设置项。
生成选项时可以引用任何变量。
变量附加设置
对于富文本框
中插入的变量标签和选项引用
配置项,点击变量之后会弹出变量过滤器
,可以对变量的使用增加一些额外的设置。
具体的设置规则参照变量过滤器
变量限制规则
可以使用变量的地方,并不能使用所有变量,系统会按照规则筛选出可使用的变量。
如果存在某个变量,但是变量选择器
中却找不到该变量,查看下列规则说明,确定是否满足引用限制规则:
- 节点中,只能引用当前节点之前节点中的
隐式变量
,不能引用当前节点之后的; - 如果某个
显式变量
中引用了某个节点的隐式变量
,则这个节点之前的节点不能引用这个显式变量; 媒体变量
只能在支持展示媒体的地方引用;HTML 变量
只能在支持展示 HTML 效果的地方引用;- 如果某个变量出现错误,则不能被引用;
解析空值
如果引用了变量,但是在运行时,这个变量解析不到值,就会解析出一个默认的空值' '。