Hi,
How can we compare the two values in Sightly test condition. i tried with below code but not working.
Ex:
<sly data-sly-list="${}" >
<sly data-sly-test="${itemList.index == ${properties.getvalue} }">Show some text</sly>
</sly>
Here "getvalue" is property name with type textfiled in a dialog, we want to display some text when list count is matching with getvalue.
Solved! Go to Solution.
This is about the Sightly not casting to a different object-type.
To convert the index, you can do this trick.
data-sly-test.stringIndex="${'{0}' @ format=[itemList.index]}"
data-sly-test="${ stringIndex == properties.yourProperty}"
Two things seems to be wrong:
1. data-sly-list="${}" is empty, which should not be
2. for comparison you can use ${itemList.index == properties.getvalue}"
Please see these article to get these things clear..
Views
Replies
Total Likes
1. I have removed the code in {} before posting to forum.
2.. for comparison you can use ${itemList.index == properties.getvalue}"
I am getting exception "
Invalid types in comparison. Equality is supported for String, Number & Boolean types
"
I thought we should convert the values to one type. I tried with @ context = 'number' but not able to get output.
Views
Replies
Total Likes
See the AEM docs here:
http://docs.adobe.com/docs/en/aem/6-0/develop/sightly/expression-language.html#Operators
Its explained in this topic.
What type of value does this return properties.getvalue, is it number or string ?
Views
Replies
Total Likes
I am using xtype as "numberfield" for fixedlength property. i don't about return type for this xtype.
Views
Replies
Total Likes
Take a look at docs, it says its " Numeric text field that provides automatic keystroke filtering and numeric validation."
https://docs.adobe.com/docs/en/cq/5-6/widgets-api/index.html?class=CQ.Ext.form.NumberField
Views
Replies
Total Likes
Hi ,
properties.getvalue will return string which cannot be compared with itemList.index which is integer. Hence you are seeing the exception
Views
Replies
Total Likes
This is about the Sightly not casting to a different object-type.
To convert the index, you can do this trick.
data-sly-test.stringIndex="${'{0}' @ format=[itemList.index]}"
data-sly-test="${ stringIndex == properties.yourProperty}"
also what property are you trying to compare with
it should be something like property.<propertyname> which returns integer
Views
Replies
Total Likes
Thanks for your help.
Views
Replies
Total Likes