Estou tentando clicar em uma LI e ter o valor desse li enviado para uma entrada da caixa de pesquisa como o valor a ser pesquisado.
Posso retirar a classe da LI, mas não sei como retirar a LI em si. Provavelmente estou entendendo tudo errado.
$(function(){
//var art = $("li.inliner").val();
$("li.inliner").on("click",function(){// select the artist from the ul
$( this ).clone() //copy it
.removeClass("inliner") //remove the inliner class
//remove the li from the clone??
.appendTo( "input(value)?? ); //this needs to be inserted into the search input as the value
});
})
Atualmente posso enviar o LI clicado para um div com a classe removida, mas ainda é um LI. Também não sei como torná-lo o valor de entrada. Qualquer ajuda é apreciada.
Respostas:
3 para resposta № 1Se eu entender da maneira certa, você pode tentar algo como
$(function(){
//WHEN YOU CLICK THE ELEMENT..
$("li.inliner").on("click",function(){
//GET THE TEXT INSIDE THAT SPECIFIC LI
var content= $(this).text();
//PLACE THE TEXT INSIDE THE INPUT FIELD, YOU CAN CHANGE YOUR SELECTOR TO TARGET THE RIGHT INPUT
$("input[name="MySearchBox"]").val(content);
//HERE YOU CAN DO SOMETHING ELSE LIKE SIBMITING THE FORM, OR CLICK A BUTTON.. OR SOMETHING ELSE
});
});
Espero que seja disso que você precisa. Fiz um pequeno exemplo usando um seletor diferente para a entrada. Espero que funcione para voce.
2 para resposta № 2
Você deseja adicionar algo assim ao seu código:
$(document).ready(function(){
// use event delegation to listen for ".inliner" clicks
$("ul.liner").on("click", ".inliner", function(){
// when an element is clicked, update the search box
$("#art").attr("value", $(this).text())
})
});