Jump to content
  • ×   Pasted as rich text.   Paste as plain text instead

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.

  • Similar Content

    • By Jefferson andre
      Saudações mestres,
       
      Como faço para ajustar o programa abaixo para calcular a diferença entre duas variaveis que armazenam horario no ajax quando ocorre um evento onblur?
       
      O programa funciona com numeros mas nao com tempo, depois que eu pegar a diferenca entre os horarios quero multiplicar por uma terceira variavel.
       
      <html> <body> <script> function calcular() { var num1 = Number(document.getElementById("hora_saida").value); var num2 = Number(document.getElementById("hora_entrega").value); var elemResult = document.getElementById("resultado"); if (elemResult.textContent === undefined) { elemResult.textContent = "O resultado eh " + String(num1 + num2) + "."; } else { // IE elemResult.innerText = "O resultado eh " + String(num1 + num2) + "."; } } </script> <label>Horario de saida</label> <input type ="time" name="hora_saida" id="hora_saida"onblur="calcular();"> <label>Horario da entrega</label> <input type ="time" name="hora_entrega" id="hora_entrega"onblur="calcular();"> <div id="resultado"></div> <span id="resultado"></span> </body> </html>  
    • By michelmir
      Olá!
       
      Recentemente fiz uma postagem aqui no fórum a respeito de se carregar valores em um input text baseando-se na opção selecionada em uma select box, onde obtive uma solução. Por conta disso resolvi adicionar um complemento neste  meu código onde o mesmo deve carregar valores corretamente dentro de uma input text utilizando o plugin TypeAhead.js e o evento onchange do Jquery.
       
      Como forma de demonstrar a minha dúvida em funcionamento, criei uma página como forma de testar a solução. O que ocorre é que quando seleciona uma opção no select box  "Categorias", o Ajax manda um request para o php script onde o mesmo retorna os valores corretamente em JSON conforme a imagem do console do navegador Chrome abaixo:
       
       
       
      Até aqui os valores relacionados com a opção selecionada no select box "Categorias" são carregados corretamente porém se eu não atualizar a página "F5" e ao mesmo tempo eu selecionar alguma outra opção dentro do select box, o input text carrega além dos valores relacionados, todos os valores não relacionados com a opção selecionada ou seja, o input text somente carrega os valores corretamente se eu atualizar a página em questão.
       
      Abaixo uma imagem demonstrando os valores carregados em uma input text quando seleciono uma outra opçao no select box quando não se atualiza a página. Todos os valores não relacionados também são carregados:
       

       
      Abaixo publico o html e os scripts Ajax, Typeahead e PHP que estou utilizando neste projeto:
       
      HTML
      <!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta charset="utf-8"> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css"> <!-- jQuery library --> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <!-- jQuery UI library --> <link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/jquery-ui.css"> <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-3-typeahead/4.0.2/bootstrap3-typeahead.min.js"></script> </head> <body> <div class="container"> <br> <h1>DYNAMIC TWITTER TYPEAHEAD</h1> <br> <div class="row"> <?php // Include the database config file include_once 'dbConfig.php'; // Fetch all the country data $query = "SELECT * FROM categorias ORDER BY categoria ASC"; $result = $db->query($query); ?> <!-- categoria dropdown --> <div class="col-md-4"> <select id="categoriaFK" name="categoriaFK" class="form-control"> <option value="">seleciona categoria</option> <?php if($result->num_rows > 0){ while($row = $result->fetch_assoc()){ echo '<option value="'.$row['categoriaID'].'">'.$row['categoria'].'</option>'; } }else{ echo '<option value="">Categoria não encontrada</option>'; } ?> </select> </div> <div class="col-md-4" id="prod"> <div ><input type="text" name="produtos" id="produtos" class="form-control input-lg typeahead" autocomplete="off" placeholder="" /></div> </div> <div class="col-md-4"> <div id="imagem" name="imagem"></div> </div> </div> </div> </body> </html>  
      No script abaixo, o Ajax envia um request para o script PHP que por sua vez retorna os valores em JSON para o Ajax que envia para o TypeAhead e carrega o input text com valores relacionados. Após selecionar uma opção no input text, o Jquery envia um valor relacionado para a div "#imagem" :
       
      $(document).ready(function(){ var produtos; var nomes = []; // array var lista = {}; // objeto $('#categoriaFK').on('change', function(){ var queryID = $(this).val(); $.ajax({ url:"fetch.php", method:"POST", data:{categoria:queryID}, dataType:"json", success:function(data){ console.log(data); $.each(data, function(i, optionHtml){ $('#produtos').append(optionHtml); }); $("#imagem").empty(''); $(".typeahead").val(''); produtos = data; } }); $('.typeahead').typeahead({ source: function(query, result) { $.each(produtos, function(idx, item){ if(!~nomes.indexOf(item.nomeProduto)) nomes.push(item.nomeProduto); lista[item.nomeProduto] = item.imagem; }); return result(nomes); }, afterSelect: function (data) { var img = lista[data]; $('#imagem').html(img); }, }); }); });  
      Abaixo, o php script que seleciona os valores baseando-se no valor selecionado do select box e os envia em formato JSON para o Ajax:
       
      <?php require_once 'dbConfig.php'; if(!empty($_POST["categoria"])){ $query = " SELECT * FROM produtos WHERE categoriaFK = ".$_POST['categoria']." "; $result = $db->query($query); $data = array (); if ( $result->num_rows > 0 ) { while($row = $result->fetch_assoc ()) { $data[] = $row; } header("Content-type: application/json; charset=utf-8 cache-control: no-cache, no-store, must-revalidate"); echo json_encode($data); exit(); } } ?> No caso como mencionado acima, nesta página que criei demonstra o funcionamento de todo o código acima, porém acredito que devo modificar o script para que o mesmo carregue valores corretamente quando seleciono alguma opção no select box "Categorias" sem precisar atualizar a página para que o mesmo carregue corretamente. 
       
      Como posso proceder? Desde já agradeço a atenção de todos.
    • By Jefferson andre
      Bom dia, alguem me ajude a fazer funcionar este pequeno script usando ajax. Preciso pegar a resposta do console e colocar na tela na id buscar2
      Resposta do console:
      {"valor_hr_viagem":"10","valor_por_km":"8","valor_apos_18":"7","valor_sabado":"6","valor_domingo":"5","id":"834"} teste_ajax.html
      <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> </head> <body> <button class="btn btn-default" id="buscar3" type="button">Buscar2</button> <div id="dados2">Aqui será inserindo o resultado da consulta...</div> <div id="valor_fixo_cliente">teste</div> <!-- SCRIPT NECESSARIO PARA O AJAX FUNCIONAR // <script src="jquery.2.1.3.min.js"></script> !--> <script src="jquery.2.1.3.min.js"></script> <script> function buscar3($id_cliente) { //O método $.ajax(); é o responsável pela requisição $.ajax ({ //Configurações type: "POST",//Método que está sendo utilizado. dataType: "json",//É o tipo de dado que a página vai retornar. url: "busca3.php",//Indica a página que está sendo solicitada. //função que vai ser executada assim que a requisição for enviada beforeSend: function (mensagem_retorno) { $("#dados2").html("Carregando..."); $("#valor_fixo_cliente").html("Carregando..."); }, data: {id_cliente: "834"},//Dados para consulta //função que será executada quando a solicitação for finalizada. success: function (mensagem_retorno) { console.log (mensagem_retorno); $("#dados2").html(mensagem_retorno.conteudo); } }); } $('#buscar3').click(function () { buscar3($("#id_cliente").val()) }); </script> </body> </html>
      buscar3.php
      <?php require('conexao_dbo.php'); include('error_report.php'); $id_procurar = $_POST['id_cliente']; $sql = "SELECT * FROM clientes WHERE id='$id_procurar'"; $sql = $arquivo->query($sql); if($sql->rowCount()>0) { $linha = $sql->fetch(); $conteudo = json_encode( array ("valor_hr_viagem" => $linha['valor_hr_viagem'], "valor_por_km" => $linha['valor_por_km'], "valor_apos_18" => $linha['valor_apos_18'], "valor_sabado" => $linha['valor_sabado'], "valor_domingo" => $linha['valor_domingo'], "id" =>$linha['id'] ) ); echo $conteudo; } ?> estrutura da tabela clientes em anexo
       

    • By Jefferson andre
      Boa tarde, por favor me ajudem com uma situacao que nao sei como proceder em linguagens web
       
      Tenho dois forms na mesma tela, ao selecionar o cliente e clicar no botao buscar dados, as informacoes que eu pegar no mysql vao "abastecer" os campos do segundo formulario, e entao enviadas para a inclusao utilizando um outro botao no final da pagina.
       
      Nao sei como atualizar as informacoes desses campos na tela, e que posteriormente serao enviados para o banco de dados incluindo as novas informacoes.
       
      Agradeço sugestoes sobre a tela enviada.

    • By Jefferson andre
      Saudacoes mestres,
       
      Estou com a seguinte situacao e nao sei resolver, em um formulario apos selecionar o cliente preciso pegar determinados valores de uma array e preencher os respectivos campos no mesmo formulario.
       
      O select do campo cliente ja tem as informacoes dos demais campos que vou precisar.
       
      Estou usando uma rotina em javascript que verifica a mudanca no campo e que agora precisa ser modificada para pegar os dados e dar retorno dos campos
       
          <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script>
          <script type="text/javascript">
              $('#estado').on('change',function() {
              alert($(this).val());
              console.log($(this).val());
              });
          </script>
       
      na rotina acima ao mudar o valor do campo aparece uma mensagem na tela, entao pensei em pegar a mesma ideia e preencher os valores dos campos.
       
      Agradeço a ajuda e sugestoes.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.