Pesquisar na Comunidade
Mostrando resultados para as tags ''Combo dinâmico PHP e Ajax''.
Encontrado 1 registro
-
Bom dia. Estou precisando de uma ajuda. Quero obter algumas informações de um determinado produto, colocando-as com um combo box. Fiz um código usando o php e ajax. A parte, isolada de montagem do combo box funciona, porém quando eu chamo essa rotina da parte principal não acontece nada. Explicações: A função chama os dados do produto funciona. Se por exemplo eu chamar a rotina "lote_combo.php", passando o parâmetro ela irá retornar o "select" da maneira que eu preciso O problema é o seguinte, quando o usuário informar o código do produto e o campo perder o foco, quero que seja montado uma lista de opções para ele (lote do produto). INDEX.PHP <script type="text/javascript" src="ajax.js" ></script> <script language="javascript" src="../js/jquery-1.6.4.min.js"></script> <script language="javascript" src="../js/jquery.maskedinput.js"></script> <link href="../css/intranet.css" rel="stylesheet" type="text/css"> <script type="text/javascript"> jQuery(function($){ $("#mkdata_i").mask("99/99/9999"); }); </script> <script language="javascript"> /* Consulta dados do produto */ var ajax = new sack(); function getConsulta() { var id = null; var a = document.activeElement.name; if(document.getElementById('idProd')){ id = document.getElementById('idProd').value.replace(/[^0-9]/g,''); } if(id.length>=1){ /* Especificando de qual arquivo irá obter as informações consulta.php = script que faz a busca desejada id = codigo do que sera procurado campos = são os campos que iram receber as informacoes encontradas. Devem ser separados por "|" (pape) OBS: o nome do campo deve ser IDENTICO ao campo na base de dados. */ ajax.requestFile = 'consulta.php?idproduto='+id+'&&campos=produto|apresentacao|marca'; ajax.onCompletion = showConsulta; // Especificando a função que será executada quando o arquivo for encontrado ajax.runAJAX(); // Executa a função em ajax } } function showConsulta() { // função que retorna a resposta da consulta var formObj = document.forms['rel_mov_produto']; eval(ajax.response); } function initFormEvents(){ // função que dispara o inicio da consulta através do onBlur document.getElementById('idProd').onblur = getConsulta; document.getElementById('idProd').focus(); } window.onload = initFormEvents; /* --------------------------------------------------------------------------------------------------------- */ </script> <div class="tit_rotina">Movimentação do produto</div> <div class="form-container"> <?php require_once("../funcao.php"); require_once("../funcaodata.php"); ?> <form action="" method="post" name="rel_mov_produto" id="rel_mov_produto" > <fieldset> <legend> Dados do produto </legend> <div> <label class="obrigatorio">Produto</label> <input id="idProd" type="text" name="idProd" size="10" maxlength="6" onKeyPress="mascaraInteiro();" tabindex="1" value="" class="obrigatorio" required onChange="CarregaLote(this.value)"/> <a href="javascript:abrir('consultaproduto.php','idProd');"><img src="../imagem/lupa.jpg" width="20" height="20" align="texttop" id="botao" /></a> <input id="produto" type="text" name="produto" value="" size="70" <?php echo $hab_tf; ?> tabindex="1" /> <br> <?php echo str_repeat(" ", 58); ?><input id="apresentacao" type="text" name="apresentacao" value="" size="60" <?php echo $hab_tf; ?> /> <br> <?php echo str_repeat(" ", 58); ?><input id="marca" type="text" name="marca" value="" size="60" <?php echo $hab_tf; ?> /> </div> <div> <br/> <div id="loteAjax"> <label for="lote" class="n_obrigatorio">Lote</label> <select name="lote" id="lote" tabindex="2"><option value="0">--Selecione o produto--</option></select> </div> </div> </fieldset> </form> <script language="javascript"> function CarregaLote(codProduto){ if(codProduto > 0){ //alert(codProduto); var myAjax = new Ajax.Updater('loteAjax','lote_combo.php?codProduto='+codProduto,{ method : 'get', }) ; } } </script> </div> LOTE_COMBO.PHP <?php include("../funcao.php"); conecta(); $codProduto = $_GET['codProduto']; echo '<script>alert('.$codProduto.');</script>'; $sql = "select lote from lote where produto = '$codProduto' order by lote"; $res = exec_sql($sql); $num_cidades = mysql_num_rows($res); ?> <select name="lote" id="lote" tabindex="2"> <?php for($j=0;$j<$num_cidades;$j++){ $dados = mysql_fetch_array($res); ?> <option value="<?php echo alltrim($dados['lote']); ?>"><?php echo alltrim($dados['lote']);?></option> <?php }?> </select>
- 2 respostas
-
- Combo dinâmico PHP e Ajax
- Combo dinamico
- (e %d mais)