Oferta Limitada! 40% OFF para compra e renovaÇÃo. Comprar agora

Autor Tópico: Como usar um Botão Ajax pra chamar uma função Javascript  (Lida 850 vezes)

miguell

  • Iniciante
  • **
  • Mensagens: 84
    • Email
Como usar um Botão Ajax pra chamar uma função Javascript
« Online: Dezembro 09, 2017, 11:12:57 am »
Como usar um Botão AJax ou ate mesmo um Botao Javascript para executar uma função em javascript que esta no evento OnLoad do Formulario, segue abaixo a função:
?>
<SCRIPT language=JavaScript>
   
function validar_campo_obrig(e)
{
   var x = 1;
      if( $('#id_sc_field_id_empresa').val().length < 1)
      {
            $(document).ready(function () {
                $.jAlert({
                    title: 'Erro - Campo Obrigatório',
                    content: '<strong>O Campo Empresa não pode ser vazio!!! [onChange] </strong>',
                    theme: 'red',
                    btns: { text: 'OK',
                          btnBackground: 'true',
                          theme:'red',
                          formSubmit: {
                                    action: function ()
                                     { //aqui abro uma funcao pra executar caso ele clique em OK
                                       $('#id_sc_field_id_empresa').focus();
                                       x = 2;
                                      //return false;
                                     }
                                   }
                      },
                   'closeBtn':false,
                   'closeOnClick': false,
                   'closeOnEsc': false
                  });
              //aqui executo o metodo javascript                                                  
              //
            });
         
      }
      else if( $('#id_sc_field_tx_cpf_cnpj').val().length < 1)
      {
            $(document).ready(function () {
                $.jAlert({
                    title: 'Erro - Campo Obrigatório',
                    content: '<strong>Número do CPF/CNPJ não pode ser vazio!!! [onChange] </strong>',
                    theme: 'red',
                    btns: { text: 'OK',
                          btnBackground: 'true',
                          theme:'red',
                          formSubmit: {
                                    action: function ()
                                     { //aqui abro uma funcao pra executar caso ele clique em OK
                                       $('#id_sc_field_tx_cpf_cnpj').focus();
                                      x = 2;
                                      //return false;
                                     }
                                   }
                      },
                   'closeBtn':false,
                   'closeOnClick': false,
                   'closeOnEsc': false
                  });
              //aqui executo o metodo javascript                                                  
              //
            });
         
      }
      else if( $('#id_sc_field_tx_cpf_cnpj').val().length < 14)
      {
            $(document).ready(function () {
                $.jAlert({
                    title: 'Erro - Campo Obrigatório',
                    content: '<strong>Número do CPF/CNPJ inválido!!! [onChange] </strong>',
                    theme: 'red',
                    btns: { text: 'OK',
                          btnBackground: 'true',
                          theme:'red'},
                   'closeBtn':false,
                   'closeOnClick': false,
                   'closeOnEsc': false
                  });
              //aqui executo o metodo javascript                                                  
              $("#id_sc_field_tx_cpf_cnpj").focus();
              x = 2;
              //return false;
            });

      }
      else if( $('#id_sc_field_tx_cpf_cnpj').val().length > 14)
      {       
            if( $('#id_sc_field_tx_cpf_cnpj').val().length < 18)
            {
               $(document).ready(function () {
                   $.jAlert({
                       title: 'Erro - Campo Obrigatório',
                       content: '<strong>Número do CPF/CNPJ inválido!!! [onChange] </strong>',
                       theme: 'red',
                       btns: { text: 'OK',
                             btnBackground: 'true',
                             theme:'red'},
                      'closeBtn':false,
                      'closeOnClick': false,
                      'closeOnEsc': false
                     });
                 //aqui executo o metodo javascript                                                  
                 $("#id_sc_field_tx_cpf_cnpj").focus();
                 x = 2;
                 //return false;
               });
               
            }
      }

   return x;      


};

</script>
<?php
[pesq_id_empresa] = {id_empresa};
[pesq_id_pessoa]  = {id_pessoas};

php_incluir_usuario();
Sérgio Miguel
Analista de Sistemas
MS WORKS INFORMÁTICA SC LTDA
(11) 2937-8938 - Comercial
(11) 96367-6916 - Celular/ZAP
Rua Hermenegildo Orsi, 149
Jardim Acácio - Guarulhos - SP - 7144-130

Haroldo

  • Expert
  • *****
  • Mensagens: 7998
  • Conhecimento diminui limitações.△TFA△
    • InfinitusWeb Software de Gestãol/Gestão ITIL/Consultoria Scriptcase
Re:Como usar um Botão Ajax pra chamar uma função Javascript
« Responder #1 Online: Dezembro 09, 2017, 01:00:41 pm »
Mas o SC já controla campos obrigatórios ao submeter o formulário.
Não entendi a necessidade desse código todo.

miguell

  • Iniciante
  • **
  • Mensagens: 84
    • Email
Re:Como usar um Botão Ajax pra chamar uma função Javascript
« Responder #2 Online: Dezembro 11, 2017, 08:34:32 am »
bom dia,
   e que estou usando a API Jalert para melhorar as mensagens e procundo no Forum encontrei uma posatagem sua mesmo onde voce fala pra usar um botao ajax pra fazer uma validação e substituir os botoes do SC..mas nao estou conseguindo usar estes botoes nao chama a função..
Sérgio Miguel
Analista de Sistemas
MS WORKS INFORMÁTICA SC LTDA
(11) 2937-8938 - Comercial
(11) 96367-6916 - Celular/ZAP
Rua Hermenegildo Orsi, 149
Jardim Acácio - Guarulhos - SP - 7144-130

Haroldo

  • Expert
  • *****
  • Mensagens: 7998
  • Conhecimento diminui limitações.△TFA△
    • InfinitusWeb Software de Gestãol/Gestão ITIL/Consultoria Scriptcase
Re:Como usar um Botão Ajax pra chamar uma função Javascript
« Responder #3 Online: Dezembro 11, 2017, 09:15:10 am »
Tem um vídeo no meu canal que aciona função javascript direto de evento Ajax.

miguell

  • Iniciante
  • **
  • Mensagens: 84
    • Email
Re:Como usar um Botão Ajax pra chamar uma função Javascript
« Responder #4 Online: Dezembro 11, 2017, 10:36:46 am »
Haroldo como fazer a substituição do botoes (Incluir, Salvar, excluir) do SC por botoes Ajax?
Sérgio Miguel
Analista de Sistemas
MS WORKS INFORMÁTICA SC LTDA
(11) 2937-8938 - Comercial
(11) 96367-6916 - Celular/ZAP
Rua Hermenegildo Orsi, 149
Jardim Acácio - Guarulhos - SP - 7144-130

miguell

  • Iniciante
  • **
  • Mensagens: 84
    • Email
Re:Como usar um Botão Ajax pra chamar uma função Javascript
« Responder #5 Online: Dezembro 11, 2017, 10:37:57 am »
Haroldo como acesso os eu canl por favor..
Sérgio Miguel
Analista de Sistemas
MS WORKS INFORMÁTICA SC LTDA
(11) 2937-8938 - Comercial
(11) 96367-6916 - Celular/ZAP
Rua Hermenegildo Orsi, 149
Jardim Acácio - Guarulhos - SP - 7144-130

Haroldo

  • Expert
  • *****
  • Mensagens: 7998
  • Conhecimento diminui limitações.△TFA△
    • InfinitusWeb Software de Gestãol/Gestão ITIL/Consultoria Scriptcase
Re:Como usar um Botão Ajax pra chamar uma função Javascript
« Responder #6 Online: Dezembro 11, 2017, 03:06:57 pm »
https://youtu.be/DO99Azgroiw

Haroldo como fazer a substituição do botoes (Incluir, Salvar, excluir) do SC por botoes Ajax?

miguell

  • Iniciante
  • **
  • Mensagens: 84
    • Email
Re:Como usar um Botão Ajax pra chamar uma função Javascript
« Responder #7 Online: Dezembro 12, 2017, 04:43:18 pm »
Haroldo,
  tem como eu criar esta função uma unica vez e chamar ela dentro dos formularios?
  Tem algum exemplo que eu possa usar pra usar desta forma e tambem criar um botão para incluir e colcar esta funcao e a rotina de inclusaõ  do SC em formulario Unico registro?
Sérgio Miguel
Analista de Sistemas
MS WORKS INFORMÁTICA SC LTDA
(11) 2937-8938 - Comercial
(11) 96367-6916 - Celular/ZAP
Rua Hermenegildo Orsi, 149
Jardim Acácio - Guarulhos - SP - 7144-130

Haroldo

  • Expert
  • *****
  • Mensagens: 7998
  • Conhecimento diminui limitações.△TFA△
    • InfinitusWeb Software de Gestãol/Gestão ITIL/Consultoria Scriptcase
Re:Como usar um Botão Ajax pra chamar uma função Javascript
« Responder #8 Online: Dezembro 12, 2017, 04:54:08 pm »
eu não sei qual função você fala. Voce pode criar bibliotecas externas para funções javascript.


Se vc criar o botão ajax, vc vai executar suas funções e por ultimo a função que inclui, altera ou exclui do SC.

para ver como usar as funções do sc basta inspecionar o código.


miguell

  • Iniciante
  • **
  • Mensagens: 84
    • Email
Re:Como usar um Botão Ajax pra chamar uma função Javascript
« Responder #9 Online: Dezembro 12, 2017, 09:12:23 pm »
Haroldo,
 a função que me refiro é esta que coloquei no inicio do topico, gostaria de criar ela passando alguns parametros e assim consegui usar em todos os formularios sem ter que ficar criandoe ste codigo e quando precisar fazer alguma manutenção ter que mexer em todo o projeto.
Segue abaixo a função que desejo colocar e chamar em todos os formularios:

<script type="text/javascript">
function validar_campo_obrig(var_tipo_msg,var_titulo_msg,var_texto_msg)
{
    var x = 1;
   if(var_tipo_msg == 'E') // Exibir Mensagem de Erro para o Usuário
   {
      $(document).ready(function ()
      {
      $.jAlert
      ({
         title: var_titulo_msg,
         content: '<strong>' + var_texto_msg + ' </strong>',
         theme: 'red',
         btns: { text: 'OK',
                 btnBackground: 'true',
                 theme:'red',
                 formSubmit:  {action: function ()
                             { //aqui abro uma funcao pra executar caso ele clique em OK
                              x = 2;
                              return false;
                            }
                           }
             },
             'closeBtn':false,
             'closeOnClick': false,
             'closeOnEsc': false
       });
       //aqui executo o metodo javascript                                                  
                    //
      });

   }
   else if(var_tipo_msg == 'W') //Exibir mensagem de Atenção para o Usuário
   {
      $(document).ready(function ()
      {
      $.jAlert
      ({
         title: var_titulo_msg,
         content: '<strong>' + var_texto_msg + ' </strong>',
         theme: 'yellow',
         btns: { text: 'OK',
                 btnBackground: 'true',
                 theme:'yellow',
                 formSubmit:  {action: function ()
                             { //aqui abro uma funcao pra executar caso ele clique em OK
                              x = 2;
                              return false;
                            }
                           }
             },
             'closeBtn':false,
             'closeOnClick': false,
             'closeOnEsc': false
       });
       //aqui executo o metodo javascript                                                  
                    //
      });


   }
   else if(var_tipo_msg == 'S') //Exibir mensagem de Sucesso para o Usuário
   {
      $(document).ready(function ()
      {
      $.jAlert
      ({
         title: var_titulo_msg,
         content: '<strong>' + var_texto_msg + ' </strong>',
         theme: 'dark_blue',
         btns: { text: 'OK',
                 btnBackground: 'true',
                 theme:'Blue',
                 formSubmit:  {action: function ()
                             { //aqui abro uma funcao pra executar caso ele clique em OK
                              x = 2;
                              return false;
                            }
                           }
             },
             'closeBtn':false,
             'closeOnClick': false,
             'closeOnEsc': false
       });
       //aqui executo o metodo javascript                                                  
                    //
      });


   }
   else if(var_tipo_msg == 'A') //Exibir mensagem de Alerta Geral  para o Usuário
   {
      $(document).ready(function ()
      {
      $.jAlert
      ({
         title: var_titulo_msg,
         content: '<strong>' + var_texto_msg + ' </strong>',
         theme: 'dark_green',
         btns: { text: 'OK',
                 btnBackground: 'true',
                 theme:'green',
                 formSubmit:  {action: function ()
                             { //aqui abro uma funcao pra executar caso ele clique em OK
                              x = 2;
                              return false;
                            }
                           }
             },
             'closeBtn':false,
             'closeOnClick': false,
             'closeOnEsc': false
       });
       //aqui executo o metodo javascript                                                  
                    //
      });


   }
   
         return x;      


};
</script>
Sérgio Miguel
Analista de Sistemas
MS WORKS INFORMÁTICA SC LTDA
(11) 2937-8938 - Comercial
(11) 96367-6916 - Celular/ZAP
Rua Hermenegildo Orsi, 149
Jardim Acácio - Guarulhos - SP - 7144-130

Haroldo

  • Expert
  • *****
  • Mensagens: 7998
  • Conhecimento diminui limitações.△TFA△
    • InfinitusWeb Software de Gestãol/Gestão ITIL/Consultoria Scriptcase
Re:Como usar um Botão Ajax pra chamar uma função Javascript
« Responder #10 Online: Dezembro 12, 2017, 10:34:00 pm »
Na verdade eu não entendi esse código aí original do tópico é não é uma função é mais uma confunção né a necessidade desse código aí dá 66 Nebulosa para mim o script case para você obrigado Campos ele tem um local próprio do próprio script Case agora se você quer uma biblioteca Para incorporar em todos os formulários Tem que criar uma biblioteca externa do tipo java script e incorporá-las formulários mas realmente a intenção desse código aí para mim tá meio estranho

miguell

  • Iniciante
  • **
  • Mensagens: 84
    • Email
Re:Como usar um Botão Ajax pra chamar uma função Javascript
« Responder #11 Online: Dezembro 13, 2017, 10:31:04 am »
bom dia,
pois é.. pode parecer uma confuncao....
Estou implementando uma API(Jalert) para mostrar mensagens de alerta, esta confusão acima e a forma que posso chamar esta API, entao eu criei tipos de alerta(Erro,Atenção,Sucesso,Alerta) e em cada situação eu passo os parametros que desejo exibir para o usuarios, é que nao sei onde coloicar um anexo para vc ver o resultado.
Fazendo esta confuncao eu entendi que o melhor seria ter este codigo em algbum lugar comum para todas as apps, criei em biblioteca intgerna e nao funcionou...agora estou querendo criar um arquivo JS e coloicar na biblioteca externa mas nao sei se funciona.
Sérgio Miguel
Analista de Sistemas
MS WORKS INFORMÁTICA SC LTDA
(11) 2937-8938 - Comercial
(11) 96367-6916 - Celular/ZAP
Rua Hermenegildo Orsi, 149
Jardim Acácio - Guarulhos - SP - 7144-130

Haroldo

  • Expert
  • *****
  • Mensagens: 7998
  • Conhecimento diminui limitações.△TFA△
    • InfinitusWeb Software de Gestãol/Gestão ITIL/Consultoria Scriptcase
Re:Como usar um Botão Ajax pra chamar uma função Javascript
« Responder #12 Online: Dezembro 13, 2017, 12:58:31 pm »
Então Miguel,  tente colocar o código em uma biblioteca externa e insira ela nos formulários.

Mas não sei se vai rolar.

para usar a Bibext. tente:

<script type="text/javascript" src="<?php echo sc_url_library('prj', 'Nome Bib Ext', 'pasta/arquivo.js'); ?>">
« Última modificação: Dezembro 13, 2017, 01:01:52 pm por Haroldo »

miguell

  • Iniciante
  • **
  • Mensagens: 84
    • Email
Re:Como usar um Botão Ajax pra chamar uma função Javascript
« Responder #13 Online: Dezembro 13, 2017, 06:22:32 pm »
valeu vou tentar, deixa te perguntar mais uma coisa estou implementando esta biblioteca e estou usando os eventos Javascript do campo onChange para validar e ta rolando, porem tem uma situação que nao consigo entender..
Quando o campo esta vazio e dou um tab pra ir para proximo campo esta mostrando duas vezes a mensagem, e quando coloco algum valor aparece certo so uma vez.
Sabe me dizer como o SC faz esta validação?
e Como eu posso usar aquelas funçoes que tem no codigo tipo do_ajax_formulario_campo_onclick e assim vai sabe me dar uma breve descrição de como funciona?
Desde ja eu agradeço pela ajuda e paciencia.. assim que eu revolver estas coisas compartilharei com todos..
Sérgio Miguel
Analista de Sistemas
MS WORKS INFORMÁTICA SC LTDA
(11) 2937-8938 - Comercial
(11) 96367-6916 - Celular/ZAP
Rua Hermenegildo Orsi, 149
Jardim Acácio - Guarulhos - SP - 7144-130

Haroldo

  • Expert
  • *****
  • Mensagens: 7998
  • Conhecimento diminui limitações.△TFA△
    • InfinitusWeb Software de Gestãol/Gestão ITIL/Consultoria Scriptcase
Re:Como usar um Botão Ajax pra chamar uma função Javascript
« Responder #14 Online: Dezembro 13, 2017, 06:46:51 pm »
Faça pelo Javascript e teste se o campo tem valor para exibir a mensagem.


valeu vou tentar, deixa te perguntar mais uma coisa estou implementando esta biblioteca e estou usando os eventos Javascript do campo onChange para validar e ta rolando, porem tem uma situação que nao consigo entender..
Quando o campo esta vazio e dou um tab pra ir para proximo campo esta mostrando duas vezes a mensagem, e quando coloco algum valor aparece certo so uma vez.
Sabe me dizer como o SC faz esta validação?
e Como eu posso usar aquelas funçoes que tem no codigo tipo do_ajax_formulario_campo_onclick e assim vai sabe me dar uma breve descrição de como funciona?
Desde ja eu agradeço pela ajuda e paciencia.. assim que eu revolver estas coisas compartilharei com todos..