SitoMan Posted March 14, 2012 at 02:35 PM Report #443918 Posted March 14, 2012 at 02:35 PM Boa tarde pessoal, Vamos então à questão técnica. Já tenho um campo de "procurar" desenhado (e aplicado) no meu site. <form method="get" id="searchform" action="<?php echo esc_url( home_url( '/' ) ); ?>"> <input type="text" name="s" id="s" value="<?php _e('Procurar...', 'framework' ); ?>" onfocus="if(this.value==this.defaultValue){this.value=''}" onblur="if(this.value==''){this.value=this.defaultValue}"/> </form> O que eu queria era algo que me permitisse qualquer coisa como: Definir 2 ou 3 palavras diferentes e sempre que uma dessas 3 palavras fosse chamada (ou seja, pesquisam por ela), o utilizador fosse levado para um URL especifico. Como estas 2 ou 3 palavras, teria outras 2 ou 3 mas que já redireccionava para um outro URL específico. Será que alguém tem alguma ideia como isto pode ser feito? Estou sem ideias, e javascript não é nada o meu forte. Nota: A linguagem utilizada pode ser qualquer coisa, não sei muito de nenhuma. Desculpem qualquer coisa, Sito.
HappyHippyHippo Posted March 14, 2012 at 02:36 PM Report #443921 Posted March 14, 2012 at 02:36 PM isso porque parece que o que pretendes só é possivel com javascript ... IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
SitoMan Posted March 14, 2012 at 02:37 PM Author Report #443922 Posted March 14, 2012 at 02:37 PM isso porque parece que o que pretendes só é possivel com javascript ... Peço então que movam isto para a secção javascript... Desculpem, não sei mesmo como fazer. 😄
SitoMan Posted March 15, 2012 at 05:53 PM Author Report #444077 Posted March 15, 2012 at 05:53 PM Já estive a tentar criar o que queria, e quase consegui. Mas fiquei-me pelo quase. Tenho alguns problemas. Um deles é o facto de apenas funcionar quando se clica no botão "procurar". Se clicarmos "enter" no teclado não funciona. Procuro solução para tal. Alguém arranja? O ideal ainda era não existir botão, só existir a caixa do "procurar" e clicar "enter" e a busca seguia, mas não sei fazer isso. 🙂 Alguém consegue ajudar? Obrigado. <script type="text/javascript"> function searchengine() { var search = document.getElementById('searchid').value; if (search == 'google') { window.location = 'http://www.google.com'; } else if (search == 'wiki') { window.location = 'http://www.wikipedia.org/'; } else if (search == 'youtube') { window.location = 'http://www.youtube.com/'; } else { alert('not found'); } } </script> <form id="searchform"> <input type="text" id="searchid" value="Procurar" onfocus="if(this.value==this.defaultValue){this.value=''}" onblur="if(this.value==''){this.value=this.defaultValue}"/> <input type="button" value="Procurar" onclick="searchengine();"/> </form>
softklin Posted March 15, 2012 at 06:12 PM Report #444079 Posted March 15, 2012 at 06:12 PM Vê esta sugestão: http://stackoverflow.com/a/155272/515814 O código ASCII do enter corresponde ao número decimal 13. Por isso, para o utilizador carregar em enter e efetuar a pesquisa, apenas tens de ter o teu input assim: <input type="text" id="searchid" value="Procurar" onkeydown="if (event.keyCode == 13) { searchengine() }" onfocus="if(this.value==this.defaultValue){this.value=''}" onblur="if(this.value==''){this.value=this.defaultValue}"/> Não testei contudo, vê se funciona. Se funcionar desta forma, nem precisas do botão. Nick antigo: softclean | Tens um projeto? | Wiki P@P Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.
yoda Posted March 15, 2012 at 06:27 PM Report #444080 Posted March 15, 2012 at 06:27 PM Vê esta sugestão: http://stackoverflow.com/a/155272/515814 O código ASCII do enter corresponde ao número decimal 13. Por isso, para o utilizador carregar em enter e efetuar a pesquisa, apenas tens de ter o teu input assim: <input type="text" id="searchid" value="Procurar" onkeydown="if (event.keyCode == 13) { searchengine() }" onfocus="if(this.value==this.defaultValue){this.value=''}" onblur="if(this.value==''){this.value=this.defaultValue}"/> Não testei contudo, vê se funciona. Se funcionar desta forma, nem precisas do botão. Dá simplesmente para criar um input do tipo sumit e deixá-lo invisível caso não seja necessário : <input type="submit" name="submit" value="" style="display:none;" /> before you post, what have you tried? - http://filipematias.info sense, purpose, direction
SitoMan Posted March 15, 2012 at 06:37 PM Author Report #444083 Posted March 15, 2012 at 06:37 PM Vou experimentar as 2 a ver, e depois logo decido o que fazer. Obrigado aos dois!!!! 🙂
softklin Posted March 15, 2012 at 08:08 PM Report #444100 Posted March 15, 2012 at 08:08 PM Eu testei esse bocado no chrome e está a funcionar. Mas se optares pela sugestão do Yoda, em vez de teres de colocar código no input, tens de o colocar no form, da seguinte maneira: <form id="searchform" onsubmit="searchengine(); return false"> O return false serve para o formulário não ser enviado para o servidor (não sei se é isto que pretendes, mas o que percebi foi que se uma das palavras chave não existir num campo, dá o erro "not found", e não vai para a página de resultados). Nick antigo: softclean | Tens um projeto? | Wiki P@P Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.
SitoMan Posted March 16, 2012 at 08:14 PM Author Report #444290 Posted March 16, 2012 at 08:14 PM Com essa form... Maravilha! Solucionou a coisa. Obrigadão! 😁
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