代码在某种程度上有效,但如果 R1Tots 处于平局,我希望 R1Tie 能够反映这一点
<%
Dim R1Tie
Dim R1Tots
R1Tots = (TLLB.Fields.Item("TotalSc").Value)
R1Tie = record.count
If R1Tots = R1Tots Then
R1Tie = R1Tie + 1
end if
%>
<%= R1Tie %>
示例我需要它看起来像
::Pos:: ::Name:: ::TotalScore::
:: 1 :: ::Joe :: ::100::
:: 2 :: ::Jane:: ::90::
:: 2 :: ::Jeff:: ::90::
:: 4 :: ::Chip:: ::80::
:: 5 :: :: Jeb:: ::75::
答案 0 :(得分:0)
这不能是Classic ASP和ASP.net。我假设它是使用VBScript的经典ASP而不是使用VB.net的ASP.net。
据推测,您提供的代码都位于循环内,循环遍历每个结果。我认为你需要做的是每个循环的位置值加1,如果有平局,则从显示的值中减去1。我这样做:
dim R1Position, R1Totalscore
R1Position = 0
do while not rs.eof
R1Position = (R1Position + 1)
If rs("TotalSc") = R1Totalscore then
Response.write (R1Position - 1) & ":: ::" & rs("name") & ":: ::" & rs("TotalSc") & "::<br>"
Else
Response.write R1Position & ":: ::" & rs("name") & ":: ::" & rs("TotalSc") & "::<br>"
End If
rs("TotalSc") = R1Totalscore
rs.movenext
loop
请注意,循环中的最后一行将rs(“totalsc”)的当前值分配给R1Totalscore,以便将此值与循环的下一次迭代中的新值进行比较。
我意识到如果每个人都得分为零,这将无效。我认为这不是我们需要担心的情况。