我有一个项目列表,并希望为用户提供跳转到他们想要的字母的选项。
例如,屏幕顶部的字母A-Z,当用户点击B时,它会将它们带到列表的一部分,第一个项目以B开头。
使用ColdFusion有没有办法做到这一点?
我的列表是使用查询填充的。
<table border="1">
<tr>
<th>Names</th>
<th>Other Stuff</th>
</tr>
<cfoutput query="getnames">
<tr>
<td>
<li>#getnames.names#</li>
</td>
<td>
<li>#getnames.otherstuff#</li>
</td>
</tr>
</cfoutput>
</table>
答案 0 :(得分:5)
您可以使用命名锚点跳转到页面中的某个位置。假设你跳到一个人的姓氏。
<cfset letters = "A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z">
<cfoutput>
<cfloop list="#letters#" index="i">
<a href="###i#">#i#</a>
</cfloop>
</cfoutput>
<cfset currentLetter = left(yourQuery.lastName,1)>
<cfoutput query = "yourQuery">
<cfif currentLetter neq left(yourQuery.lastName,1)>
<cfset currentLetter = left(yourQuery.lastName,1)>
<a name = "#currentLetter#" />
</cfif>
#yourQuery.lastName#<br />
</cfoutput>
答案 1 :(得分:2)
使用锚点。在列表中,给第一个带有起始字母的项目,如下所示:
<li id="letter-a">Apple</li>
然后在你的信件列表中链接到它:
<a href="#letter-a">A</a>
(如果您有每个字母的标题,请将ID提供给那些。)