toarelli Posted July 21, 2018 at 06:40 PM Report #611403 Posted July 21, 2018 at 06:40 PM Caros amigos, Saudações Estou com um pequeno problema que não estou conseguindo solucionar. Após uma Pesquisa por: Descrição ou Categoria, gostaria de LIMPAR o input, não estou conseguindo. Como devo fazer isso? abaixo o código que faço a pesquisa. <section class="content-header" style="margin-top:-30px;"> <?php //Variável criada para persistir a busca no input $pesquisa = (isset($_POST['pesquisa']) ? $_POST['pesquisa'] : ''); ?> <form name="frm_busca" id="frm_busca" action="" enctype="multipart/form-data" method="post" > <div class="col-sm-6 invoice-col"> <div class="input-group margin"> <input type="text" name="pesquisa" id="pesquisa" class="form-control" onkeyup="up(this)" value="<?php echo $pesquisa; ?>" placeholder="Descrição do Produto ou Categoria para Pesquisar." /> <span class="input-group-btn"> <button type="submit" name="busca" id="busca" class="btn btn-primary btn-flat" value="Pesquisar" > Pesquisar </button> </span> </div> </div> <!-- Nesse parte tentei dando um REFRESH na página para ver se limpava o INPUT, não consegui. --> <div class="col-sm-2 invoice-col" style="margin-top:0px;"> <div class="input-group margin"> <span class="input-group-btn"> <a class="btn btn-danger" name="button" id="button" value="Limpar" style="margin-left:-45px;" title="Limpar Pesquisa na Tabela Abaixo" onclick="frm_busca.action='painel.php?exe=admin-cliente/produto/produtos_lista'; frm_busca.submit()" />Limpar</a> </span> </div> </div> </form> </section><!-- Fim SECTION Pesquisar --> no código de pesquisa, realiza a função normalmente. <?php $pesq = ""; $pesquisaGet = isset($_GET['pesquisa']) ? $_GET['pesquisa'] : false; $pesquisa = isset($_POST['pesquisa']) ? $_POST['pesquisa'] : $pesquisaGet; $codClie = "$userClientes_clienteId"; //Filtro de Busca if( isset($_POST['busca']) && $_POST['busca'] == 'Pesquisar' ){ $pesq = "WHERE clientes_clienteId = '$codClie' AND produtoDescr LIKE '%".$pesquisa."%' OR desc_categ LIKE '%".$pesquisa."%' ORDER BY produtoDescr ASC "; } else { $pesq ="WHERE clientes_clienteId = '$codClie' ORDER BY produtoDescr ASC "; } $sql_pegaAtivos = "SELECT * FROM produto $pesq "; try{ $query_pegaAtivos = $conecta->prepare($sql_pegaAtivos); $query_pegaAtivos->execute(); $resultado_pegaAtivos = $query_pegaAtivos->fetchAll(PDO::FETCH_ASSOC); $count_pegaAtivos = $query_pegaAtivos->rowCount(PDO::FETCH_ASSOC); }catch(PDOexception $error_pegaAtivos){ echo 'Erro ao pegar ativos'; } foreach($resultado_pegaAtivos as $resAtivos){ $produtoId = $resAtivos['produtoId']; $codProdClie = $resAtivos['codProdClie']; $clientes_clienteId = $resAtivos['clientes_clienteId']; $desc_categ = $resAtivos['desc_categ']; $apres_unid = $resAtivos['apres_unid']; $produtoDescr = $resAtivos['produtoDescr']; $produtoStatus = $resAtivos['produtoStatus']; } ?> Grato, Toarelli
elitepc Posted July 21, 2018 at 07:22 PM Report #611404 Posted July 21, 2018 at 07:22 PM (edited) Boas, Se bem entendi o que necessitavas era só uma questão de não imprimires a varíavel no atributo value do input: <input type="text" name="pesquisa" id="pesquisa" class="form-control" onkeyup="up(this)" value="" placeholder="Descrição do Produto ou Categoria para Pesquisar." /> No entanto não sei o que a função de javascript "up" faz por isso não consigo determinar o resultado final. O que é que já tinhas experimentado para tentar resolver a situação? EDIT: reparei agora que estás a usar PDO e mesmo assim tens variáveis concatenadas. Corrige ou arranja alguém para corrigir isso se te preocupas com o conteúdo da base de dados. Edited July 21, 2018 at 07:24 PM by elitepc
toarelli Posted July 22, 2018 at 03:38 PM Author Report #611410 Posted July 22, 2018 at 03:38 PM 20 horas atrás, elitepc disse: Boas, Se bem entendi o que necessitavas era só uma questão de não imprimires a varíavel no atributo value do input: <input type="text" name="pesquisa" id="pesquisa" class="form-control" onkeyup="up(this)" value="" placeholder="Descrição do Produto ou Categoria para Pesquisar." /> No entanto não sei o que a função de javascript "up" faz por isso não consigo determinar o resultado final. O que é que já tinhas experimentado para tentar resolver a situação? EDIT: reparei agora que estás a usar PDO e mesmo assim tens variáveis concatenadas. Corrige ou arranja alguém para corrigir isso se te preocupas com o conteúdo da base de dados. Caro amigo. a função onkeyup="up(this)" -> transforma letras minúsculas em maiúsculas. o value = " " -> fica realmente o INPUT em branco, mas se quiser persistir a Busca, deixei o value assim: value="<?php echo $pesquisa; ?>" desta forma o VALUE fica preenchido e o INPUT não perde o foco da Busca. Gostaria de uma forma de quando pressionar LIMPAR o INPUT seja limpo. Grato por sua atenção. Saudações Toarelli
elitepc Posted July 22, 2018 at 04:28 PM Report #611411 Posted July 22, 2018 at 04:28 PM Boas, pretendes então que ao clicar no botão de id "button" o input seja limpo certo? Podes usar mesmo o botão do tipo "reset". <input class="btn btn-danger" type="reset" value="Reset"> <button class="btn btn-danger" type="reset">Reset</button> Ou solução em js por algum motivo, no onclick: document.getElementById("pesquisa").value = "";
toarelli Posted July 22, 2018 at 08:31 PM Author Report #611412 Posted July 22, 2018 at 08:31 PM 4 horas atrás, elitepc disse: Boas, pretendes então que ao clicar no botão de id "button" o input seja limpo certo? Podes usar mesmo o botão do tipo "reset". <input class="btn btn-danger" type="reset" value="Reset"> <button class="btn btn-danger" type="reset">Reset</button> Ou solução em js por algum motivo, no onclick: document.getElementById("pesquisa").value = ""; Amigo elitepc para usar a função em JS, com acima mencionado devo fazer desta forma e já limpa o INPUT: <script language="JavaScript" > document.getElementById("pesquisa").value = ""; </script> ou precisar criar uma função específica e depois chamar no BUTTON ? Grato
elitepc Posted July 22, 2018 at 08:50 PM Report #611413 Posted July 22, 2018 at 08:50 PM Se puderes usar apenas o que mencionei sem javascript ótimo. Se tiveres mesmo de usar javascript, para o código ficar mais limpo, cria uma função que faça isso e coloca no "onclick".
toarelli Posted July 22, 2018 at 09:44 PM Author Report #611414 Posted July 22, 2018 at 09:44 PM 50 minutos atrás, elitepc disse: Se puderes usar apenas o que mencionei sem javascript ótimo. Se tiveres mesmo de usar javascript, para o código ficar mais limpo, cria uma função que faça isso e coloca no "onclick". Amigo, por favor, me perdoa por tirar mais uma dúvida com o amigo. No meu INPUT que uso para limpar está assim: <section class="content-header" style="margin-top:-30px;"> <?php //Variável criada para persistir a busca no input $pesquisa = (isset($_POST['pesquisa']) ? $_POST['pesquisa'] : ''); ?> <form name="frm_busca" id="frm_busca" action="" enctype="multipart/form-data" method="post" > <div class="col-sm-7 invoice-col"> <div class="input-group margin"> <input type="text" name="pesquisa" id="pesquisa" class="form-control" onkeyup="up(this)" value="<?php echo $pesquisa; ?>" placeholder="Informe a Descrição do Produto para Pesquisar." /> <span class="input-group-btn"> <button type="submit" name="busca" id="busca" class="btn btn-primary btn-flat" value="Pesquisar" > Pesquisar </button> </span> <!-- AQUI UTILIZO O INPUT PARA DAR UM REFRESH NA PÁGINA --> <span class="input-group-btn"> <a class="btn btn-danger" name="button" id="button" value="Limpar" style="margin-left:5px;" title="Limpar Pesquisa na Tabela Abaixo" onclick="frm_busca.action='painel.php?exe=admin-cliente/produto/produtos_lista'; frm_busca.submit()" />Limpar</a> </span> </div> </div> </form> </section><!-- Fim SECTION Pesquisar --> No INPUT que uso para limpar já uso a função "ONCLICK" para dar um refresh na tabela, funciona atualiza a tabela. Como faria para usar no mesmo ONCLICK para chamar outra função ? As outras formas que o amigo passou testei mas não deu certo, acredito que em JS irá resolver. Grato,
washalbano Posted July 22, 2018 at 10:54 PM Report #611415 Posted July 22, 2018 at 10:54 PM Olá! No final da função que o sr. usa para dar o refresh na tabela, defina que o valor do input de busca será = '';
toarelli Posted July 23, 2018 at 07:08 PM Author Report #611424 Posted July 23, 2018 at 07:08 PM 20 horas atrás, washalbano disse: Olá! No final da função que o sr. usa para dar o refresh na tabela, defina que o valor do input de busca será = ''; Amigo Albano, saudações como ficaria o final dessa linha, não entendi: <span class="input-group-btn"> <a class="btn btn-danger" name="button" id="button" value="Limpar" style="margin-left:5px;" title="Limpar Pesquisa na Tabela Abaixo" onclick="frm_busca.action='painel.php?exe=admin-cliente/produto/produtos_lista'; frm_busca.submit()" />Limpar</a> </span> Grato
washalbano Posted July 23, 2018 at 07:18 PM Report #611425 Posted July 23, 2018 at 07:18 PM (edited) ué! isso aqui submete o form e dá um refresh na página? frm_busca.submit() Então o sr. precisa apagar: $pesquisa = (isset($_POST['pesquisa']) ? $_POST['pesquisa'] : ''); e <?php echo $pesquisa; ?> Ou seguir as orientações passadas por elitepc, no sábado Edited July 23, 2018 at 07:19 PM by washalbano
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now