在许多情况下,我被要求做的一件事是能够在记录返回页面中搜索文本后突出显示文本。 下面完美地做到了这一点。
在记录返回页面中使用此功能:
'Highlight searched for text function
Function Highlight(strText, strFind, strBefore, strAfter)
Dim nPos
Dim nLen
Dim nLenAll
nLen = Len(strFind)
nLenAll = nLen + Len(strBefore) + Len(strAfter) + 1
Highlight = strText
If nLen > 0 And Len(Highlight) > 0 Then
nPos = InStr(1, Highlight, strFind, 1)
Do While nPos > 0
Highlight = Left(Highlight, nPos - 1) & _
strBefore & Mid(Highlight, nPos, nLen) & strAfter & _
Mid(Highlight, nPos + nLen)
nPos = InStr(nPos + nLenAll, Highlight, strFind, 1)
Loop
End If
End Function
要在页面内实现它,请在记录集返回周围使用以下代码,在这种情况下,文本将以黄色背景的红色粗体突出显示。 MYDATARETURN是数据库返回给您的内容,THESTRINGSEARCHEDFOR是变量输入,您将在搜索中使用它。
<%=Highlight(RS1("MYDATARETURN"),""&THESTRINGSEARCHEDFOR&"", "<b><font color=red><span style='background-color: yellow'>", "</span></font></b>")%>
这真的很容易而且令人印象深刻。
如果您正在使用多字段搜索,如我在其他文章中概述的那样,我将此函数包装在返回的每个数据字段周围,则可以在多个字段中进行多个高亮显示。
From: https://bytes.com/topic/asp-classic/insights/708790-how-highlight-searched-text