Aem 是否可以在cq:Widget(textarea)中使用regex字段?
我在属性编辑器中输入了有效的RegExp,但它不起作用。 属性名是Aem 是否可以在cq:Widget(textarea)中使用regex字段?,aem,Aem,我在属性编辑器中输入了有效的RegExp,但它不起作用。 属性名是regex,它肯定出现在5.3和5.6中(我有5.5) 我得到一个错误uncaughttypeerror:Object/^/content/trainingSite/(.*)$/没有方法“test”,我从javascript调试器看到,this.regex是一个字符串。当然,字符串没有test方法 由于属性编辑器中并没有RegExp类型,CQ只是将小部件的值转储为字符串,所以它根本无法工作。我遗漏了什么吗?在ExtJS表单字段中,
regex
,它肯定出现在5.3和5.6中(我有5.5)
我得到一个错误uncaughttypeerror:Object/^/content/trainingSite/(.*)$/没有方法“test”
,我从javascript调试器看到,this.regex
是一个字符串。当然,字符串没有test
方法
由于属性编辑器中并没有RegExp类型,CQ只是将小部件的值转储为字符串,所以它根本无法工作。我遗漏了什么吗?在ExtJS表单字段中,只有具有
regex
和regexText
属性
ExtJS表单字段的通用验证框架包括:
并且vtypes需要在CQ.Ext.form.vtypes
上注册:
CQ.Ext.form.VTypes["my_path_structure"] = /^/content/trainingSite/(.*)$/;
CQ.Ext.form.VTypes["my_path_structureText"] = "Invalid path";
- 第一个条目(
)可以是函数或javascript regexp - 验证失败时将显示
条目文本
- 还有一个
,它允许您提供一个可选的Mask,当用户在字段中输入内容时,该Mask将被实时验证Mask
.在ExtJS表单字段中,只有具有
regex
和regexText
属性
ExtJS表单字段的通用验证框架包括:
并且vtypes需要在CQ.Ext.form.vtypes
上注册:
CQ.Ext.form.VTypes["my_path_structure"] = /^/content/trainingSite/(.*)$/;
CQ.Ext.form.VTypes["my_path_structureText"] = "Invalid path";
- 第一个条目(
)可以是函数或javascript regexp - 验证失败时将显示
条目文本
- 还有一个
,它允许您提供一个可选的Mask,当用户在字段中输入内容时,该Mask将被实时验证Mask
.首先,我们可以使用
String.prototype.match
和字符串参数。至少在AEM6中,我们可以将正则表达式编写为两端带有斜杠的字符串文字:“/^\\\/content\\/trainingSite\\/(.*)$/”
,它将正常工作。首先,我们可以使用string.prototype.match
和字符串参数。另外,至少在AEM6中,我们可以将正则表达式编写为两端都带有斜杠的字符串文字:“/^\\\/content\\/trainingSite\\\/(.*)$/”
,它将正常工作。我也遇到类似问题,只需输入值就会抛出控制台错误。测试无效。当我用以下语法输入regex值时,我的问题得到了解决:
regex="new RegExp("/content/dam/(.*)/(.*)")"
从eclipse和导入的或类似于以下内容的crxde lite:
Name:regex Type:String Value:new RegExp("/content/(.*)/(.*)/(.*)")
我有一个类似的问题,只需输入值就会抛出一个控制台错误,说明.test无效。当我用以下语法输入regex值时,我的问题得到了解决:
regex="new RegExp("/content/dam/(.*)/(.*)")"
从eclipse和导入的或类似于以下内容的crxde lite:
Name:regex Type:String Value:new RegExp("/content/(.*)/(.*)/(.*)")
我建议添加标签,因为这不是CQ特有的。不,问题是CQ特有的。在“普通”Ext中,我只需在config中编写regex文本,就不会有我遇到的问题。在ExtJS中,只有TextField支持
regex
。你的问题似乎更广泛;-)好的,我只是指文本字段。它们都有共同的widgt配置格式。@kirilloid您是如何解决这个问题的?我知道这是一个很老的问题,但我遇到了同样的问题,CQ小部件api显示了从textbox继承的pathfield,因此正则表达式也应该可以用于pathfield我建议添加标记,因为这不是CQ特有的。不,问题是CQ特有的。在“普通”Ext中,我只需在config中编写regex文本,就不会有我遇到的问题。在ExtJS中,只有TextField支持regex
。你的问题似乎更广泛;-)好的,我只是指文本字段。它们都有共同的widgt配置格式。@kirilloid您是如何解决这个问题的?我知道这是一个很老的问题,但我也遇到了同样的问题,CQ widget api显示了从textbox继承的pathfield,所以正则表达式也应该可以用于pathfield尼斯变通方法,它比创建全新组件更好。尼斯变通方法,比创建全新组件更好。