Hi Everyone,
I’m learning about input forms. I have 6 parameters, and I want the second parameter to become visible as soon as the user starts typing in the previous parameter.
For example:
When I type something in Parameter 1, Parameter 2 should appear, and so on for the rest. This functionality works fine in navigation hierarchy when the Tab key pressed, but it is not working as expected in delivery.
Can someone help me resolve this issue?
Here is my input form code:
Regards,
Sujith kumar
Topics help categorize Community content and increase your ability to discover relevant content.
Views
Replies
Total Likes
Hi @Sujith_02kumar,
I think that the problem comes when relying on EV(), I would recommend you to try substituting it by applying visibleIf condition only to each imput.
Here I share an example of a possible imput solution:
<input label="Parameter2" visibleIf="[../Other/CustomPersonalization/@Parameter1] != ''" xpath="../Other/CustomPersonalization/@Parameter2"/>
On the other side, I will try to validate that all XPath Expressions point to the correct data schema element.
If you need more assistance, please let me know.
Regards,
Celia
Views
Replies
Total Likes
Thanks for responding. Still the issue persists. Parameter2 is not showing when i type something on parameter1.
Here is the modified code as per your suggestion:
Regards,
Sujith kumar
Views
Replies
Total Likes
Try with this one:
<container type="visibleGroup" visibleIf="EV([../@customSubChannelType], 'Other')">
<container label="Personalization value details" type="frame">
<static>Please fill Personalization details here.</static>
<container>
<input label="Has Personalization?" xpath="../Other/@hasPersonalization"/>
</container>
<container colcount="2" type="visibleGroup" visibleIf="EV([../Other/@hasPersonalization], 'Yes')">
<input label="Parameter1" xpath="../Other/CustomPersonalization/@Parameter1"/>
<input label="Parameter2" visibleIf="[../Other/CustomPersonalization/@Parameter1] != ''" xpath="../Other/CustomPersonalization/@Parameter2"/>
<input label="Parameter3" visibleIf="[../Other/CustomPersonalization/@Parameter2] != ''" xpath="../Other/CustomPersonalization/@Parameter3"/>
<input label="Parameter4" visibleIf="[../Other/CustomPersonalization/@Parameter3] != ''" xpath="../Other/CustomPersonalization/@Parameter4"/>
<input label="Parameter5" visibleIf="[../Other/CustomPersonalization/@Parameter4] != ''" xpath="../Other/CustomPersonalization/@Parameter5"/>
<input label="Parameter6" visibleIf="[../Other/CustomPersonalization/@Parameter5] != ''" xpath="../Other/CustomPersonalization/@Parameter6"/>
</container>
</container>
</container>
Regards,
Celia
Views
Replies
Total Likes
Tried the same. Still the issue persists.
Regards,
Sujith kumar
Views
Replies
Total Likes
Have you tried to isolate parameter 1 and parameter 2, test the behavior verifying that parameter 1 exists under Customer Personalization schema inside Administration> Configuration> Data Schemas.
Additionally you can check xpath evaluation by doing the following and see how it behaves:
<input label="Parameter2" visibleIf="true()" xpath="../Other/CustomPersonalization/@Parameter2"/>
**If Parameter 2 turns to visible revise the condition
Other option:
Use a refresh to force the update.
<input label="Parameter2" visibleIf="[../Other/CustomPersonalization/@Parameter1] != ''" refreshIf="[../Other/CustomPersonalization/@Parameter1]" xpath="../Other/CustomPersonalization/@Parameter2"/>
Let's see how it behaves.
Views
Replies
Total Likes
Tried everything. Still the issue persists. Only if I remove type="visibleGroup" I can see parameter2.
Regards,
Sujith kumar
Views
Replies
Total Likes
Try to encapsulate the inputs in containers
Something like this
<container colcount="2" type="visibleGroup" visibleIf="Length(@_internalName)=0">
<container colspan="1">
<input colspan="2"
</input>
</container>
</container>
Views
Replies
Total Likes
No luck
Views
Replies
Total Likes