Support Article
Button in repeat layout on refresh section has incorrect DOM ID
SA-11855
Summary
Buttons in a repeating layout are meant to have incremental IDs to make them have distinct actions applied per row. However, when a user applies an onClick > "Refresh this section" action, the ID does not recognize that it is in a repeating layout. The ID of the Document Object Model (DOM) that is given after the refresh is no longer distinct. This affects triggering CSS styles. The screen design uses CSS 3 hover and focus styles. After a button's onClick > Refresh this section action, the CSS styling is applied only to the first element. Hovering over the second label will highlight the first label because it is for SamplePropertyName.
Error Messages
Not Applicable
Steps to Reproduce
Apply an onClick > Refresh this section as an action to rows in a repeating layout.
Root Cause
The root cause of this problem is a defect in Pegasystems’ code or rules.
In repeating layout, the field control's ID is not incremental. It points to the property name. Here's a conceptual example of rendered HTML to explain the defect:
<div class="content-item content-sub_section item-1 base_ref=".SampleRecord(Key1)">
<input id="SamplePropertyName" name="$PpyWorkPage$pSampleRecord$gKey1$pSamplePropertyName" data-click="..." />
<label for="SamplePropertyName" data-hover="..." />
</div>
<div class="content-item content-sub_section item-2 base_ref=".SampleRecord(Key2)">
<input id="SamplePropertyName" name="$PpyWorkPage$pSampleRecord$gKey2$pSamplePropertyName" data-click="..." />
<label for="SamplePropertyName" data-hover="..." />
</div>
Resolution
Apply HFix-21289.
Published May 25, 2016 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.