Tengo un programa que puede actualizar valores múltiples, quería dar settimeout 2 segundos después de hacer clic en la casilla de verificación específica. cuando settimeout se está cargando, la otra casilla de verificación en apex-repeat está deshabilitada y cuando settimeout finaliza, la otra casilla de verificación se habilitará nuevamente.
Lo intenté de muchas maneras y todavía no lo descubro. ¿Es posible?
este es mi código ahora:
<apex:repeat value="{!dataSalesPlan}" var="i"> <apex:inputCheckbox styleClass="checkOpex{!i.spd.ID} checkOpex {!i.spd.ID}" value=" {!i.opex}"> <apex:actionSupport event="onchange" action="{!updateOpex}" reRender=""> <apex:param name="salesPlanIndex" value="{!i.index}" assignTo="{!salesPlanIndex}"/> </apex:actionSupport> </apex:inputCheckbox> </apex:repeat>JavaScript:
<script type="text/javascript"> document.documentElement.style.setProperty('--screen-width', (screen.width - 120)+'px'); j$ = jQuery.noConflict(); j$(document).ready(function() { j$(document).on('change', '.checkOpex', function(e) { var self = $(this); $(this).prop('disabled', true); setTimeout(function() { $(self).removeAttr('disabled'); alert("Succesfully Set Data"); }, 2000); }); });