Mostrando entradas con la etiqueta JavaScript. Mostrar todas las entradas
Mostrando entradas con la etiqueta JavaScript. Mostrar todas las entradas

martes, 6 de octubre de 2020

Trick - Get top n values in JavaScript

Partiendo de la base de que disponemos de un array o un JSON con n resultados con k variables cada objeto del tipo [{variable1:value1, variable2:value2, ...variablek:valuek}... n-data] se puede obtener sólo los n objetos que tengan el máximo valor en alguna de las variables de la siguiente manera apoyándonos en las funciones sort y slice:

 

Si los datos provienen de un JSON, parseamos antes:

var data = JSON.parse(json);

sino directamente:

var topn = data.sort(function(a, b) { return a.variable1 < b.variable1 ? 1 : -1; })
                .slice(0, n);
 

donde n es el número que queremos obtener como máximo, y variable1 la variable con el
valor que queremos comparar. 


Hope its usefull!

jueves, 27 de febrero de 2020

jQuery en ADF

Ejemplo práctico de como usar jQuery en ADF, en este caso como cambiar el type de un inputText para el caso de querer mostrar los caracteres de un campo contraseña.

<af:resource type="javascript"
                     source="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"/>
        <af:resource type="javascript">

          function showPasswordMethod(e) {
              var inputPassword1 = $("input[id*=it2]")[0];
              if (inputPassword1.type == "text") {
                  inputPassword1.type = "password";
                  $("img[id*=imgShowPassword]")[0].src = "/webcenter/../wcstatic/img/genericas/eye_black.png";
              }
              else {
                  inputPassword1.type = "text";
                  $("img[id*=imgShowPassword]")[0].src = "/webcenter/../wcstatic/img/genericas/eye_red.png";
              }
          }
        </af:resource>


<af:inputText label="Contraseña actual" id="it2" required="true"                                     styleClass="resetPasswordField oldpwd" value="#{resetPasswordBean.oldpassword}"
 secret="true" autoComplete="off"/>

<af:image source="/../wcstatic/img/genericas/eye_black.png"                                  id="imgShowPassword" inlineStyle="position: absolute;bottom: 190px; right: 14px; cursor: pointer;">
      <af:clientListener method="showPasswordMethod" type="click"/>
</af:image>