用jquery显示包含关键词的部分文字高亮,这些写错在哪里?

epui2008 2012-11-07 11:23:22
一个网站的搜索页面
搜索关键词会显示包含关键词的内容

现在要实现这些搜索内容中的关键词 部分高亮

我是这样做的

<style type="text/css">
.highlight{ font-style:italic;}

</style>
---- jquery 代码这样写的
<script type="text/javascript">
$(document).ready(function () {
var searchtext = $('.search_textbox3').val();
$('.list_tab_2 td:contains(searchtext)').addClass('highlight');
});
</script>
-------
说明: .search_textbox3 这个样式是 搜索框的 css 样式类名
.list_tab_2 是 搜索结果的表格 应用的css样式类名

请问这样写有什么问题吗?为什么没效果呢?只有18分,全给了哦,谢谢了
...全文
125 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
epui2008 2012-11-08
  • 打赏
  • 举报
回复
谢谢,我试了下,还是没效果,但是我知道你的写法是正确的,可能我那里没调试好,耽搁太多时间了,我用了jquery的 highlight 插件,搞定了,等有空再研究下简单写法为什么不行。 xzy21com ,感谢!
scscms太阳光 2012-11-08
  • 打赏
  • 举报
回复
两点错误: 1.不能直接运行,var searchtext = $('.search_textbox3').val(); 如果这里没有值那就是为空,没有意义。应该换成在函数中执行。 2.$('.list_tab_2 td:contains(searchtext)').addClass('highlight');中的(searchtext)错误,它是变量,你当成字符串用了。
<style type="text/css">
    .highlight{  font-style:italic;color:red}
</style>
<input type="text" class="search_textbox3" value="们" />
<input type="button" value="搜索" onclick="ff()" />
<table class="list_tab_2">
    <tr>
        <td>
我们大家
        </td>
    </tr>
</table>
<script type="text/javascript">
    function ff() {
        var searchtext = $('.search_textbox3').val();
        $('.list_tab_2  td:contains('+searchtext+')').addClass('highlight');
    }
</script>

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧