Publicidade

Leo - gaviaoshow

Validar dados após envio de ajax no java

Patrocínio:

Pessoal, boa tarde!

Estou com uma dúvida na parte de ajax com java dentro de uma página PHP.

Peço desculpas se abri o tópico no lugar errado.

Tenho uma página que executa um formValidation (form_valida_dados) e executa via ajax a chamada para a próxima página. Isso funciona perfeitamente quando executo via função submit do form.

O problema é que eu tenho uma outra opção dentro da página em que o usuário pode optar por enviar o formulário para uma outra pessoa. Nesse caso, ele clica em outro botão do form. Nesse momento, eu preciso abrir um modal em que o usuário informe o motivo pelo qual ele deseja enviar esse formulário para outra pessoa.

Eu fiz isso com o código abaixo:

$.ajax({
        url : 'scripts/consultar_situacao_scm.php',
	type: 'post',
	dataType : 'html',
	data: 'scm_id='+scm_id+'&usuario='+usuario+'&acao='+acao,
	success : function(retorno){
		if(retorno == "1"){
			var box = bootbox.alert('Não foi possível encaminhar o SCM <font class="cyan-600"><b>'+scm_id+'</b></font> para análise do Assuntos Regulatórios.');
			box.find('.modal-footer').css({'background-color': '#f2f2f2', 'color': '#fff'});
		}else{
			$("#altera_andamento").modal({ backdrop: 'static' });
	    		$("#scm_retorno").html(retorno); 
		      }
		}
});

Dentro da minha página eu tenho uma <div> que fica aguardando o retorno dessa chamada ajax.

Isso funcionou do jeito que eu queria.

A questão é que dentro da página que eu chamei (consultar_situacao_scm.php) eu tenho a montagem do modal e também valido os dados digitados pelo usuário e chamo uma nova página via ajax, ou seja, seria a terceira página a ser utilizada.

Agora que entra minha dúvida/problema. Eu queria executar o formValidation (form_valida_dados) após o usuário informar o motivo pelo qual ele está enviando o formulário para outra pessoa.

Mas eu não consigo do jeito que está, pois a minha função do botão de enviar para outro usuário está "fechando" com o retorno do ajax acima citado.

Tem algum jeito de resolver isso? Vocês já viram algo desse tipo ou tem alguma outra sugestão para fazer essa validação?

Deu para entender ou ficou confuso?

Procurei bastante na net mas não encontrei nada relacionado a minha dúvida.

Agradeço pela ajuda!

Abraços

0

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!


Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.


Entrar Agora

  • Próximos Eventos

  • Conteúdo Similar

    • Por murilosouzajr
      Olá,
       
      Tenho um duvida simples, mas não consigo resolver! rs
       
      Se o valor do resultado for menor que 22.80 ele exibira sempre 22.80.. se maior exibe o resultado normal..
       
      Então:
      Se valor for x (x <=22.80) ele exibe 22.80
       
      Fiddle:
      https://jsfiddle.net/elevafoco/qafkqgjg/13/ (Exemplo completo)
       
      Codigo reduzido (javascript):
      var circus = (total*0.95); var desconto = (circus*0.8771929824561404); var completo = formatacao.format(desconto.toPrecision(4)); $(".diff").html(completo); HTML:
      <label>Valor :</label> <div id="diff" class='diff' style='border: 1px solic #ccc'> </div> Obs: Já vi varias opções, mais nenhuma que mudasse apenas o campo de resultado sem "altert" sem nada.. somente o campo do resultado.
    • Por Madk
      Bom, estou penando pra conseguir fazer isso e nao to conseguindo, nao achei ninguem ensinando de forma que eu entenda ou da forma que eu precisava. Eu estou fazendo um programa tipo um caixa eletronico onde tem a a classe TDepositar que recebera o valor a ser depositado digitados no Jtextfield, eu queria pegar esse valor digitado convertendo para double , apos o Usuario clickar no OK, e mostrar na tela da classe TExtrato. Eu nao estou conseguindo converter esse valor e nao sei como mostrar ele na tela TExtrato. Se alguem puder me ajudar agradeco :)
       
      Classe TDepositar (tentei converter para double apos clickar no ok)
      package Trab; import java.awt.Container;   import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton;   import javax.swing.JFrame;   import javax.swing.JLabel;   import javax.swing.JOptionPane;    import javax.swing.JTextField;   public class TDepositar extends JFrame{       JButton voltar = new JButton("voltar");       JButton ok = new JButton("ok");     JTextField deposito = new JTextField();     double valor;     public TDepositar (){           super("Depositar");           Container c = getContentPane();         c.setLayout(new GridLayout(3,2));           c.add(new JLabel ("Quanto deseja depositar:"));           c.add(deposito);          ok.addActionListener(new ActionListener() {             @SuppressWarnings("deprecation")             public void actionPerformed(ActionEvent e){              valor = Double.parseDouble(deposito.getText());              new TCaixa().show();              dispose();             }         });         c.add(ok);                  voltar.addActionListener(new ActionListener() {             @SuppressWarnings("deprecation")             public void actionPerformed(ActionEvent e){             new TCaixa().show();              dispose();             }         });         c.add(voltar);         setSize(300,200);         setDefaultCloseOperation(EXIT_ON_CLOSE);     } }  
      Classe TExtrato
       
      package Trab; import java.awt.Container;   import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton;   import javax.swing.JFrame;   import javax.swing.JLabel;   import javax.swing.JOptionPane;    import javax.swing.JTextField;   public class TExtrato extends JFrame{       JButton voltar = new JButton("Voltar");       JButton ok = new JButton("ok");     public TExtrato (){           super("Extrato");           Container c = getContentPane();           c.setLayout(new GridLayout(3,2));           c.add(new JLabel ("Nome:"));         c.add(new JLabel ("Numero da conta:"));         c.add(new JLabel ("Saldo atual:"));         c.add(new JLabel ("Saques realizados hoje:"));                  ok.addActionListener(new ActionListener() {             @SuppressWarnings("deprecation")             public void actionPerformed(ActionEvent e){             new TCaixa().show();              dispose();             }         });         c.add(ok);                  voltar.addActionListener(new ActionListener() {             @SuppressWarnings("deprecation")             public void actionPerformed(ActionEvent e){             new TCaixa().show();              dispose();             }         });         c.add(voltar);         setSize(300,200);         setDefaultCloseOperation(EXIT_ON_CLOSE);     }   }
    • Por MarKteus
      Estou tentando carregar uma pagina simples só pra teste dentro de uma div em outra pagina, assim:
       
                 $('.botaoCarregar').click(function () {                $('#divContainer').load("pageTeste.html");           });  
      Mas nada acontece, alias acontece erro 404 not found (mas a pagina está la)
      Estou usando nodejs para subir o server e testando em localhost

      Alguém sabe o que pode ser ?
    • Por lorenadutra
      Bom dia!
      Eu tenho uma aplicação web que está rodando apenas localmente, preciso liberar esta aplicação para que os outros usuários possam acessar, eu preciso que  a aplicação funcione offline e fique online apenas quando o usuário fizer determinada ação no sistema. 
      Alguém pode me dar um ideia do que preciso? e se é possível também.
    • Por RafaelLeggiero
      Bom dia,
      amigos tenho um problema para para utilizar o Split após buscar informações no Banco concateno em uma variável para utilizar no AJAX realizando um split() para separar as rotas de um motorista, porém quando rodo o programa ele dá erro no split dizendo '
      Uncaught SyntaxError: Unexpected token var' 
       
      Código PHP
       
      <?php $sql = "SELECT * FROM tblMotoristaRota WHERE UsuarioId = ".$id; $cmd = $pdo->prepare($sql); $cmd->execute(); $lista_rotas = $cmd->fetchAll(); $rotasId = ""; foreach ($lista_rotas as &$item_rotas) { $rotasId += $item_rotas["RotaId"].","; echo $item_rotas["RotaId"].","; }; ?> Código AJAX
       
      <script> $(document).ready(function() { $('#regional').change(function(){ lista_rota(); }); if (($('#regional').val() != "") && ($('#rota').val() == "")){ lista_rota(); } }); function lista_rota() { $("#table").html(''); var rotas = <?php echo $rotasId; ?> var arrayRotas = rotas.split(','); var temChecked = false; $.ajax({ type: "GET", url: "valida_rota.php?regional=" + $('#regional').val(), dataType:"json", success:function(response){ if (response != "NOK") { $('#table').append('<thead><tr><th>Selecionar</th><th>Nome da Rota</th></tr></thead>'); for (var key in response) { if (response.hasOwnProperty(key)) { for(var i = 0 ; i < arrayRotas.length;i++){ if(response[key]["Id"] == arrayRotas[i]){ $('#table').append('<tr><td style="width:20px;"><center><input checked type="checkbox" id="id_rota" value="'+ response[key]["Id"] +'" name="id_rota[]"></center></td><td>' + response[key]["Nome"] + '</td></tr>'); temChecked = true; break; } } if(!temChecked) { $('#table').append('<tr><td style="width:20px;"><center><input type="checkbox" id="id_rota" value="'+ response[key]["Id"] +'" name="id_rota[]"></center></td><td>' + response[key]["Nome"] + '</td></tr>'); } temChecked = false; } } } }, error:function (xhr, ajaxOptions, thrownError){ alert('Ocorreu um erro inesperado. Por favor tente novamente mais tarde.'); } }); } </script> Desde já muito obrigado!