当前背景: 我有一个连接到数据库的ASP.NET VB表单。在数据库中,有一个名为TourCount的字段。每次用户提交表单时,此计数都会减1。
目标: 当TourCount达到0时,所有注册必须关闭。然而,目前,TourCount继续描述为负数。当TourCount达到0时,我希望在表单上方显示“注册已关闭”的消息。
当前尝试: 我尝试了一些东西,但我不知道它会发生什么。我没有收到配置错误消息,但它也从未正常运行。我不确定我应该使用哪种类型的脚本或什么类型的脚本。我的逻辑说,当TourCount小于或等于零时,通过名为“Message”的id显示一个文本字符串。
<asp:SqlDataSource id="SqlDataSrcTourCount" runat="server" ConnectionString="<%$ ConnectionStrings:recruitmentConnectionString %>" SelectCommand = "SELECT [TourCount] FROM [tourdates] WHERE [TourType] = @TourType AND [TourDatesAvailable] = @TourDates" ProviderName="System.Data.SqlClient" UpdateCommand="UPDATE [tourdates] SET [TourCount] = ([TourCount] - 1) WHERE [TourType] = @TourType AND [TourDatesAvailable] = @TourDates">
<SelectParameters>
<asp:Parameter Name="TourType" DefaultValue="JobFair"></asp:Parameter>
<asp:Parameter Name="TourDates" Type="String"></asp:Parameter>
</SelectParameters>
<UpdateParameters>
<asp:parameter Name="TourType" DefaultValue="JobFair"></asp:Parameter>
<asp:parameter Name="TourDates" Type="String"></asp:Parameter>
</UpdateParameters>
</asp:SqlDataSource>
<script type="text/javascript">
If (TourCount <= 0) {
document.getElementById("Message").style.display = "inline";
return true;
}
else {
document.getElementById("Message").style.display = "none";
return false;
}
</script>
In the HTML: <span id="Message">-Closed-</span>
如果有人能为我提供有关如何进行的一些见解,我将非常感谢您的帮助。非常感谢您抽出时间阅读。
答案 0 :(得分:0)
我想知道,你为什么要使用javascript?
如果我是你,我只需在PageLoad上获得TourCount 如果TourCount = 0,则导航到您的closed.asmx 否则,当他们点击提交按钮 再次获得TourCount(在此期间它可能会改变) 如果仍然> 0进行注册并减少TourCount 如果0导航到“太慢的慢速”页面。
我唯一使用javascript的方法是每x秒动态刷新一次TourCount,当它达到0时自动导航到closed.asmx。