Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Próxima revisión
Revisión previa
wiki:2.-desarrollo-app:2.3.-codigo:c.-eventos:30.-ontextchanged:start [2018/03/01 09:30]
127.0.0.1 editor externo
wiki:2.-desarrollo-app:2.3.-codigo:c.-eventos:30.-ontextchanged:start [2021/03/02 12:07] (actual)
ary [Prop type=”T”]
Línea 1: Línea 1:
  
 {{indexmenu_n>1}} {{indexmenu_n>1}}
-===== Nodo ONRECOVERY  =====+===== ONTEXTCHANGED  =====
 \\ \\
-Nodo que chequea, reconoce y recupera el password del usuario una vez logueado, para no tener que volver a introducirlo.\\+ 
 +==== Prop type=”T” ====
 \\ \\
-<code xml+^onTextChanged    |<WRAP
-        <action name="runscript"+**target**: Propiedad donde se produce el evento.\\  **keyPressed**: Tecla pulsada o todo el texto nuevo introducido de golpe (ej. por copiar y pegar)\\ **oldText**: Texto antes del cambio\\ **newText**: Texto ya cambiado\\ 
-          <script language="VBScript" +<code javascript onTextChanged.js
-FRecover +function eventoOnTextChanged(evento) { 
-  </script> + ui.showToast("onTextChanged! target: + evento.target + "\nObjItem: " + evento.objItem + "\nTecla pulsada: " + evento.keyPressed + "\noldText: " + evento.oldText + "\nnewText: " + evento.newText); 
-        </action> +}
-      </onrecovery>+
 </code> </code>
 +</WRAP>   
 +^onTextLengthChanged    |length: Tamaño total del texto |    
 +^onFocusChanged    |isFocused: Si tiene focus o no el target |    
 +^onEditorAction    |(Para simplemente pulsar tecla intro o siguiente en el teclado) |    
 +\\   
  
 +Se ha implementado un nuevo método **setInputType()** en los type="T" que permite aplicar una máscara definido por atributo input-type en este tipo de prop, el cual se usa para mofificar el teclado que muestra y la mejor manera de hacerlo es junto al evento onTextChanged.
 +
 +**Ejemplo:**
 +
 +<code javascript>
 +
 +<prop name="MAP_INPUT_TYPE" type="T"   visible="1" title="Type T"    labelwidth="10" width="100%" height="7%" tmargin="1" input-type="numeric" ontextchanged="onTextChanged(e);"/>
 +
 +function onTextChanged(evento) {
 +    let control = ui.getView(evento.objItem)[evento.target];
 +    let nLength = evento.newLength;
 +    if (nLength > 3 && nLength < 6) {
 +        control.setInputType("text");
 +    } else if (nLength > 6 && nLength < 9) {
 +        control.setInputType("phone");
 +    } else if (nLength > 9) {
 +        control.setInputType("email");
 +    }
 +}
 +
 +</code>