Jump to content
Fórum Script Brasil
  • 0

Retornar valor no input


Creedence
 Share

Question

Bom dia !

Estou testando uma pequena rotina e caso funcione vou adaptá-la à minha necessidade.
Nesse teste, eu informo um valor no primeiro input ( 1000,2000 ou 3000)e ele deveria atualizar o segundo input baseado numa pesquisa numa pagina php.
Quando eu devolvo o valor via $("#seletor").html(variavel); não atualiza o segundo input .
No entanto, na mesma pagina eu tenho um select e o select atualiza a informação corretamente. 
Acho que o seletor html para  retornar o valor do input está errado.

Esse teste pode ser visualizado aqui: http://webntc.org.br/testeajax/exemplo1.htm 

No campo aliquota tinha que trazer a informação, 12, 13 ou 16 (de acordo com a consulta do arquivo php).

Abaixo os codigos:

Obrigado,

Marcos

****************************************

exemplo1.htm

<html>
   <head>
      <title>Exemplo</title>
      <script src="http://code.jquery.com/jquery-1.11.2.min.js"></script>
      <script type="text/javascript" src="exemplo1.js"></script>
   </head>
   <body>
     <label for="kilometro">Kilometro: </label>
       <input type="text" name="kilometro" id="kilometro">
<br>
     <label for="aliquota">Aliquota:</label>
       <input type="text" name="aliquota" id="aliquota" value="">
<br>
      <label for="valiquota1">aliquota1:</label>
      <select name="aliquota1" id="aliquota1"></select>      
   </body>
</html>

****************************************

exemplo1.js

$(document).ready(function(){
   $("#kilometro").change(function(){
      $.ajax({
         type: "POST",
         url: "exemplo1.php",
         data: {kilometro: $("#kilometro").val()},
         dataType: "json",
         success: function(json){
            var aliquota1 = "";
            var aliquota = "";
            $.each(json, function(key, value){
               aliquota1 += '<option value="' + key + '">' + value + '</option>';
               aliquota  += '<input value="' + key + '">';
            });
            $("#aliquota1").html(aliquota1);
            $("#aliquota").html(aliquota);

         }
      });
   });
});

****************************************

exemplo1.php

<?php
header('Content-type: text/json');
$retorno = array();
switch($_POST['kilometro'])
{
   case 1000: //Fiat
      $retorno = array(
         12 => "Siena"
      );
      break;
   case 2000: //Ford
      $retorno = array(
         13 => "Escort",
      );
      break;
   case 3000: //Volkswagen
      $retorno = array(
         16 => "Fusca",
      );
      break;
}
echo json_encode($retorno);
?>

 

 

 

 

 

 

 

 

Link to comment
Share on other sites

2 answers to this question

Recommended Posts

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   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.

 Share

  • Forum Statistics

    • Total Topics
      149.6k
    • Total Posts
      646.2k
×
×
  • Create New...