jQuery表格搜索匹配高亮是一種常見(jiàn)的實(shí)現(xiàn)方式,它可以使用戶(hù)更方便地找到自己需要的內(nèi)容。以下是一個(gè)實(shí)現(xiàn)高亮匹配的jQuery代碼示例,使用pre標(biāo)簽表示代碼部分:
$("#search-input").on("keyup", function() { var value = $(this).val().toLowerCase(); $("#table-body tr").filter(function() { $(this).toggle($(this).text().toLowerCase().indexOf(value) > -1) }).each(function(){ var textToShow = $(this).text().toLowerCase().replace(value, "<span class='highlighted'>" + value + "</span>"); $(this).html(textToShow); }); });
這段代碼包括了鍵盤(pán)彈起事件監(jiān)聽(tīng)、搜索變量獲取、篩選行操作和匹配高亮操作。通過(guò)監(jiān)聽(tīng)鍵盤(pán)彈起事件可以實(shí)時(shí)獲取搜索框的內(nèi)容,使用toLowerCase將其轉(zhuǎn)換成小寫(xiě),方便匹配操作。接著使用filter篩選出包含搜索內(nèi)容的行,使用toggle切換它們的顯示和隱藏狀態(tài)。最后,對(duì)于每一行,找到需要高亮的文字,并用html方法將它們替換成相應(yīng)的html標(biāo)記,從而實(shí)現(xiàn)高亮效果。
需要注意的是,此代碼只能在表格的td標(biāo)簽中查找文字來(lái)匹配高亮,如果在表格的其他標(biāo)簽中,如th中查找,需要對(duì)代碼進(jìn)行相應(yīng)的修改。
上一篇jquery表單生成器
下一篇div n無(wú)效