Resalta texto en una página después de que se represente

votos
2

Tengo una aplicación que permite al usuario buscar en una serie de campos una cadena. Cuando vean el registro de detalles, les gustaría que se resalten todas las apariciones de la cadena.

El formulario de detalles está formado por etiquetas y vistas de lista, la mayoría de las cuales viven dentro de TabPanels (desde AJAX Control Toolkit). Me gustaría evitar el uso de la fuerza bruta para analizar manualmente cada valor para agregar las etiquetas resaltadoras antes de mostrarlo.

¿Hay alguna manera de cargar mi formulario y luego analizar el HTML? ¿Conoces alguna otra manera de resolver esto?

Publicado el 09/12/2008 a las 22:52
fuente por usuario
En otros idiomas...                            


1 respuestas

votos
5

¿Qué hay de JavaScript y JQuery? http://plugins.jquery.com/project/highlight

Acabo de probar ese complemento y funcionó. Puede especificar qué etiquetas desea resaltar y qué palabras.

<script language="javascript" type="text/javascript" src="js/jquery-1.2.6.min.js"></script>
<script language="javascript" type="text/javascript" src="js/jquery.highlight-2.pack.js"></script>
<script language="javascript" type="text/javascript">
$(document).ready( function () {
    $('p').each(function() { $.highlight(this, 'LOREM'); });
});
</script>
<style type="text/css">
    .highlight { background-color: yellow }
</style>

..
..
..
    <p>
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi gravida risus elementum tortor. Duis mattis, est et volutpat cursus, mi mi ornare tortor, sed fringilla nibh erat sed eros. In nec orci vel velit scelerisque ultrices. Nunc auctor elit. Proin orci ligula, luctus a, venenatis sit amet, laoreet a, mauris. Suspendisse sem nibh, interdum eu, vestibulum non, semper vel, mauris. In quis leo suscipit risus semper pretium. Cras interdum iaculis dui. Etiam vel ipsum eu sapien dapibus sagittis. Donec lobortis, lectus et placerat euismod, quam dui porttitor sem, sed fermentum eros quam ac ipsum. Ut eu augue. Nullam lacinia dictum neque. Nullam eros. Phasellus sem nisi, feugiat nec, consectetur vel, ullamcorper at, nisl. Aenean quam risus, ullamcorper a, ultricies ut, posuere ac, quam. Vestibulum sed lectus ac orci fermentum viverra. Sed aliquam. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.
    </p>
Respondida el 09/12/2008 a las 23:11
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more