Vamos a ver, aqui va mi nuevo problema:
Tengo un input con un boton buscar y un datagrid
Código :
<input id="txtBuscar" class="input" /> <input id="btnBuscar" type="button" value="Buscar" class="boton" /> <asp:DataList ID="datalist" runat="server" > <ItemTemplate> <li id="<%#Container.DataItem("COD")%>" > <%#Container.DataItem("NOM")%> </li> </ItemTemplate> <HeaderTemplate> <ul id="datalistItem"> </HeaderTemplate> <FooterTemplate> </ul> </FooterTemplate> </asp:DataList>
y al pulsar el boton quiero que me oculte todos los li y luego me muestre sólo los que contengan el texto a buscar,
vamos, que si en el input pone "arc" me busque todos los li que contengan ese texto. Lo tengo así:
Código :
jQuery('#btnBuscar').click(function(){ var strbuscar=jQuery('#txtBuscar')[0].value; jQuery('li').toggle(); jQuery("li:contains('"+strbuscar+"')").toggle(); })
En principio me lo hace todo correcto, lo único que al mostrarlos me deja espacios en blanco entre las líneas que se muestran, mi pregunta, cómo podría hacer que esto no pasara??? Se supone que el toggle modifica la altura también del objeto a ocultar y mostrar, no sé porqué esta pasando esto... Alguien tiene alguna idea????
He probado con hide y show también y me hace lo mismo, y si lo hago sólo con una línea se me oculta perfectamente. Creo que el fallo da a la hora de volver a mostrarlo... pero ya no sé a que es debido.
Espero vustras respuestas, un saludo