[英]session variables classic asp
使用 session 变量存储复选框的选中 state 时出现问题。 我正在使用分页,因此当按下每个字母时,将出现一个复选框,并将相应的字母存储为其值。 当一个复选框被选中时,它的 state 被保存,但是问题是当我取消选中该复选框时它仍然被选中。 也不知道这是否相关,但我已将按钮更改为看起来像超链接,因此我可以使用 post 方法而不是使用查询字符串,因为我不想使用它。 下面提供的代码
<form action="Table.asp" method="post" name="form2">
<input type="submit" name="Button" value="#" style="background:transparent;border:0;display:inline;color:#00F;text-decoration:underline;padding:0px;cursor:pointer">
<% for i = 97 to 122 %>
<input type="submit" name="Button" value="<%=CHR(i) %>" style="background:transparent;border:0;display:inline;color:#00F;text-decoration:underline;padding:0px;cursor:pointer;">
<% next %>
</br></br></br>
<%
alphaB = request.form("Button")
if alphaB <>"" then
alphaCheck = request.form("checkBox")
if alphaCheck <>"" then
session("checkBox_"&alphaCheck) = "checked"
else
session("checkBox_"&alphaCheck) = ""
end if
%>
<input type="checkbox" name="checkBox" value="<%=alphaB %>" <%=session("checkBox_"&alphaB) %>>
<%
response.write alphaB
end if
您应该在回发之前保存“未选中”的值,然后使用该值。
<form action="Table.asp" method="post" name="form2">
<input type="submit" name="Button" value="#" style="background:transparent;border:0;display:inline;color:#00F;text-decoration:underline;padding:0px;cursor:pointer">
<% for i = 97 to 122 %>
<input type="submit" name="Button" value="<%=CHR(i) %>" style="background:transparent;border:0;display:inline;color:#00F;text-decoration:underline;padding:0px;cursor:pointer;">
<% next %>
</br></br></br>
<%
alphaB = request.form("Button")
if alphaB <>"" then
alphaCheck = request.form("checkBox")
if alphaCheck <>"" then
session("checkBox_"&alphaCheck) = "checked"
else
'EDIT use last one
session("checkBox_"&session("lastOne")) = ""
end if
'EDIT save the last one in session
session("lastOne") = alphaB
%>
<input type="checkbox" name="checkBox" value="<%=alphaB %>" <%=session("checkBox_"&alphaB) %>>
<%
response.write alphaB
end if
%>
我要做的是使用隐藏字段来保存最后一个字母
hidAlphaCheck = request.form("lastcheckbox")
alphaCheck = request.form("checkBox")
if alphaCheck <>"" then
session("checkBox_"&hidAlphaCheck) = "checked"
else
session("checkBox_"&hidAlphaCheck) = ""
end if
...
<input type="checkbox" name="checkBox" value="<%=alphaB %>" <%=session("checkBox_"&alphaB) %>>
<input type="hidden" name="lastcheckbox" id="lastcheckbox" value="<%=alphaB%>" />
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.