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 July 6, 2015 — Updated May 25, 2016


Have a question? Get answers now.

Visit the Pega Support Community to ask questions, engage in discussions, and help others.