Tendo alguns problemas com o bootstrap, então alguma ajuda seria incrível. obrigado
O que eu gostaria: (parte superior)
Meu código atual:
<div class="form-group">
<input type="text"
class="form-control"
id="findJobTitle"
name="findJobTitle"
placeholder="Job Title, Keywords"
onkeyup="showResult()">
</div>
Captura de tela atual:
twitter-bootstrap
twitter-bootstrap-3
Espírito Fantasma K2SO
fonte
fonte
#searchclear
período fosse um botão. É um elemento interativo, então marque-o como um elemento interativo. Do jeito que está, os usuários que contam com a navegação do teclado não podem acessar a extensão da pesquisa e isso não será facilmente reconhecido por tecnologias assistivas (como leitores de tela)position: relative
e ajuste #searchclear comz-index: 10; top: 10px
e removabottom: 0
Solução HTML 5 super simples:
Fonte: Tutorial HTML 5 - Tipo de entrada: Pesquisa
Isso funciona pelo menos no Chrome 8, Edge 14, IE 10 e Safari 5 e não requer Bootstrap ou qualquer outra biblioteca. (Infelizmente, parece que o Firefox ainda não oferece suporte ao botão de limpar a pesquisa.)
Depois de digitar na caixa de pesquisa, um 'x' aparecerá, que pode ser clicado para limpar o texto. Isso ainda funcionará como uma caixa de edição comum (sem o botão 'x') em outros navegadores, como o Firefox, portanto, os usuários do Firefox podem selecionar o texto e pressionar excluir ou ...
Se você realmente precisa que este recurso bom de ter suporte no Firefox, então você pode implementar uma das outras soluções postadas aqui como um polyfill para elementos de entrada [type = search]. Um polyfill é um código que adiciona automaticamente um recurso padrão do navegador quando o navegador do usuário não oferece suporte ao recurso. Com o tempo, a esperança é que você consiga remover polyfills à medida que os navegadores implementam os respectivos recursos. E, em qualquer caso, uma implementação de polyfill pode ajudar a manter o código HTML mais limpo.
A propósito, outros tipos de entrada HTML 5 (como "data", "número", "e-mail", etc.) também degradam normalmente para uma caixa de edição simples. Alguns navegadores podem fornecer um seletor de data sofisticado, um controle giratório com botões para cima / para baixo ou (em telefones celulares) um teclado especial que inclui o sinal '@' e um botão '.com', mas que eu saiba, todos os navegadores mostrará pelo menos uma caixa de texto simples para qualquer tipo de entrada não reconhecido.
Solução Bootstrap 3 e HTML 5
O Bootstrap 3 redefine muitos CSS e quebra o botão de cancelar pesquisa do HTML 5. Depois que o CSS do Bootstrap 3 for carregado, você pode restaurar o botão de cancelamento da pesquisa com o CSS usado no exemplo a seguir:
Fonte: HTML 5 A entrada de pesquisa não funciona com bootstrap
Testei se essa solução funciona nas versões mais recentes do Chrome, Edge e Internet Explorer. Não consigo testar no Safari. Infelizmente, o botão 'x' para limpar a pesquisa não aparece no Firefox, mas como acima, um polyfill pode ser implementado para navegadores que não suportam esse recurso nativamente (por exemplo, Firefox).
fonte
Tentei evitar muito CSS customizado e depois de ler alguns outros exemplos, mesclei as ideias lá e encontrei esta solução:
Como não uso o JavaScript do bootstrap, apenas o CSS junto com o Angular, não preciso das classes has-clear e form-control-clear, e implementei a função clear no meu controlador AngularJS. Com o JavaScript do bootstrap, isso pode ser possível sem o próprio JavaScript.
fonte
ng-click="ctrl.searchService.searchTerm = null"
eng-show="ctrl.searchService.searchTerm"
Obrigado, sem fio, sua solução estava muito limpa. Eu estava usando formulários de bootstrap horizontais e fiz algumas modificações para permitir um único manipulador e css de formulário.
html: - ATUALIZADO para usar has-feedback e form-control-feedback do Bootstrap
javascript:
exemplo: http://www.bootply.com/130682
fonte
$(".clearer").hide($(this).prev('input').val());
fazer? Não pode ser assim$(".clearer").hide();
?$(".clearer").toggle(!!$(this).prev('input').val());
Resposta do AngularJS / UI-Bootstrap
style="cursor: pointer; pointer-events: all;"
ng-click
para limpar o texto.JavaScript (app.js)
HTML (index.html snippet)
Aqui está o plunker: http://plnkr.co/edit/av9VFw?p=preview
fonte
Faça isso com scripts e estilos embutidos:
fonte
Aqui está minha solução de trabalho com pesquisa e ícone claro para Angularjs \ Bootstrap com CSS.
fonte
Não vincule ao ID do elemento, apenas use o elemento de entrada 'anterior' para limpar.
CSS:
Javascript:
Marcação HTML, use o quanto quiser:
fonte
Coloque a imagem (ícone de cancelamento) com posição absoluta, ajuste as propriedades superior e esquerda e chame o evento onclick do método que limpa o campo de entrada.
Em css posicione o span de acordo,
fonte