我尝试学习MODX FormIt组件的用法(MODX riv.2.7.0,FormIt v.4.1.1)。现在我尝试为表单域设置验证规则,比如“必填,只有数字,大于”,同时我想用占位符表示最小值。我这样调用FormIt:
[[!FormIt?
&hooks=`openSession`
&redirectTo=`1`
&placeholderPrefix=``
&validate=`my_field:required:isNumber:minValue=`[[!+my_min_value]]``
]]但我可以在'my_field‘字段中输入任何数字。如果我对minValue使用数字而不是占位符,一切都可以正常工作。占位符也成功地解析为下面表单中的数字。当我错的时候?
发布于 2018-12-20 02:32:14
IIRC,您不能在参数中使用占位符。
不过,您应该尝试使用以下代码,以防它在最新版本中得到支持:
[[!FormIt?
&hooks=`openSession`
&redirectTo=`1`
&placeholderPrefix=``
&validate=`my_field:required:isNumber:minValue=^[[!+my_min_value]]^`
]]或
您可以使用自定义验证器,在其中您应该能够使用getPlaceholder来读取您的占位符。
有关为什么使用^而不是反勾号的更多详细信息,请参阅
https://stackoverflow.com/questions/53822844
复制相似问题