Mudanças entre as edições de "Desenvolvedor:APIs/JavaScript/latromi.formManager"

De LATROMI Manuais
Desenvolvedor:APIs/JavaScript/latromi.formManager
Ir para: navegação, pesquisa
m (Escutando eventos do Formulário)
 
(4 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 33: Linha 33:
  
 
== Exemplos ==
 
== Exemplos ==
 +
=== Escutando eventos do Formulário ===
 +
O exemplo a seguir mostra como criar um objeto para escutar os eventos do formulário. O código executa as seguintes ações:
 +
* Cria um objeto chamado '''MyForm'''
 +
* No objeto '''MyForm''' são adicionadas funções públicas e privadas para escutar os eventos do Formulário.
 +
*: ''OBS.: A utilização de funções privadas para escutar os eventos não é obrigatória. O mesmo pode ser feiro diretamente nas funções públicas.''
 +
* Uma variável chamada '''myForm''' é declarada, e recebe uma nova instância do objeto '''MyForm'''.
 +
* Em seguida, é configurada a escuta dos eventos do formulário pelo objeto instanciado na variável '''myForm'''.
 +
<syntaxhighlight lang="JavaScript">
 +
// Cria o objeto MyForm
 +
var MyForm = function () {
 +
 +
  function onFormCreatedPrivate(arguments) {
 +
      console.log('Formulário Criado.');
 +
  }
 +
 +
  function onEventFiringPrivate(arguments) {
 +
      console.log('Evento ' + arguments.eventName + ' disparado.');
 +
  }
 +
 +
  function onFieldValueChangedPrivate(arguments) {
 +
      console.log('O valor do campo ' + arguments.field.name + ' foi alterado.');
 +
  }
 +
 +
  return {
 +
      // Delega a escuta do evento para funções privadas
 +
      // (não pode ser acessadas de fora deste objeto)
 +
      onFormCreated        : onFormCreatedPrivate,
 +
      onEventFiring        : onEventFiringPrivate,
 +
      onFieldValueChanged  : onFieldValueChangedPrivate
 +
  }
 +
};
 +
 +
// Declara uma instância do objeto MyForm
 +
var myForm = new MyForm();
 +
 +
// Utiliza funções públicas do objeto MyForm como Callback para os eventos de Formulário.
 +
latromi.formManager.setOnFormCreatedCallback( myForm.onFormCreated );
 +
latromi.formManager.setOnEventFiringCallback( myForm.onEventFiring );
 +
latromi.formManager.setOnFieldValueChangedCallback( myForm.onFieldValueChanged );
 +
</syntaxhighlight>

Edição atual tal como às 20h51min de 9 de julho de 2018

Gerenciador de Formulários Dinâmicos. Esse objeto não precisa ser estanciado pois é um objeto estático.

Sintaxe

latromi.formInstance = function () {
      return {
         setOnFormCreatedCallback       : function (callback)    { },
         setOnEventFiringCallback       : function (callback)    { },
         setOnFieldValueChangedCallback : function (callback)    { },
         getFormInstance                : function (upgradeCode) { }
      }
}

Métodos

Nome Descrição
getFormInstance(string) Retorna um objeto do tipo latromi.formInstance, referente a um Formulário Dinâmico carregado na tela.
setOnFormCreatedCallback(function) Callback disparado quando o Formulário for criado na página.
setOnEventFiringCallback(function) Callback disparado quando um evento for disparado.
setOnFieldValueChangedCallback(function) Callback disparado quando o valor de um campo for alterado.

Exemplos

Escutando eventos do Formulário

O exemplo a seguir mostra como criar um objeto para escutar os eventos do formulário. O código executa as seguintes ações:

  • Cria um objeto chamado MyForm
  • No objeto MyForm são adicionadas funções públicas e privadas para escutar os eventos do Formulário.
    OBS.: A utilização de funções privadas para escutar os eventos não é obrigatória. O mesmo pode ser feiro diretamente nas funções públicas.
  • Uma variável chamada myForm é declarada, e recebe uma nova instância do objeto MyForm.
  • Em seguida, é configurada a escuta dos eventos do formulário pelo objeto instanciado na variável myForm.
// Cria o objeto MyForm
var MyForm = function () {

   function onFormCreatedPrivate(arguments) {
      console.log('Formulário Criado.');
   }

   function onEventFiringPrivate(arguments) {
      console.log('Evento ' + arguments.eventName + ' disparado.');
   }

   function onFieldValueChangedPrivate(arguments) {
      console.log('O valor do campo ' + arguments.field.name + ' foi alterado.');
   }

   return {
      // Delega a escuta do evento para funções privadas 
      // (não pode ser acessadas de fora deste objeto)
      onFormCreated        : onFormCreatedPrivate,
      onEventFiring        : onEventFiringPrivate,
      onFieldValueChanged  : onFieldValueChangedPrivate
   }
};

// Declara uma instância do objeto MyForm
var myForm = new MyForm();

// Utiliza funções públicas do objeto MyForm como Callback para os eventos de Formulário.
latromi.formManager.setOnFormCreatedCallback( myForm.onFormCreated );
latromi.formManager.setOnEventFiringCallback( myForm.onEventFiring );
latromi.formManager.setOnFieldValueChangedCallback( myForm.onFieldValueChanged );