【问题标题】:Countdown asp using VBS倒计时asp使用VBS
【发布时间】:2017-12-07 10:02:49
【问题描述】:

我正在尝试制作一个倒计时页面,它应显示每个计数的数字,它从用户条目中获取数字,在表格内。

最后它应该显示例如从 10 到 1,数字 10,9,8,7,6,5,4,3,2,1。

同时我得到结果,但只是为了计数,但我如何让它倒数,它进入我的循环但它只显示第一个数字,我如何显示其余的?

          <%
response.flush
l_start = request.querystring("f_start")
l_goal = request.querystring("f_goal")


%>

<form action = "countdown.asp" method = "get">
   <h1 align = "center">Dies ist ein Zähler!<h1>
    <table border = "1" align = "center">
      <tr>
        <td>
          Bitte einen Startwert eingeben.
        </td>
        <td>
          <input type = "number" name = "f_start" value = "<%=l_start%>"
        </td>
        <td width = "100">
          &nbsp;
        </td>
        <td>
          Bitte einen Zielwert eingeben.
        </td>
        <td>
          <input type = "number" name = "f_goal" value = "<%=l_goal%>"
        </td>
        <td>
          <input type = "submit" value = "Go!" \>
        </td>
      </tr>
      <tr>
        <td>
          Gez&auml;hlte Zahlen:
        </td>
        <td>
          <%
            if request.querystring(("f_start")) < request.querystring(("f_goal")) then
              For i = l_start To l_goal
                response.write("" & i & ",")
              Next
            else
                counter = l_start
              while counter > l_goal
                response.write(counter)
                response.write(",")
                counter = l_start - 1
              wend
            end if
          %>
        </td>
      </tr>
    </table>
</form>

【问题讨论】:

    标签: asp.net vbscript asp-classic


    【解决方案1】:

    这里有很多问题。首先,如果f_start 大于f_goal,则仅进入if 语句的then 子句,然后如果f_start 小于或等于,则仅进入while 的主体f_goalelse 子句的条件类似。

    但比这更糟糕的是,因为您使用了名为 f_startf_goalf_count 的未定义变量。我认为您打算使用来自 Request.QueryString 的值,但这不是您正在做的事情。

    您将值分配给 l_startl_goall_count,但从不更改它们。您修改了xy 中的值,但从不使用它们。您将未更改的 l_startl_goal 放回表单中。

    最后,您对这段代码在何处执行以及脚本中的变量如何与表单相关的理解似乎存在认知脱节。这是在服务器上执行的。您在表单中输入的值将提交给服务器。脚本运行并且不对从表单传递给它的值做任何事情。然后,它将这些值直接放回表单中。

    【讨论】:

    • 其实你的最后一部分是不正确的。 OP 没有将runat="server" 放在脚本标签中,因此它在客户端运行。现代浏览器,甚至Internet Explorer 都会忽略它。
    • 所以你的意思是 if 是不必要的甚至是错误的? f_goal、f_start 应该由用户条目定义。 ——
    • 我在问题上看到了 asp-classic 标签,并假设脚本在服务器上运行。对于那个很抱歉。雷克斯,我帮不了你了。该脚本在客户端上运行(假设您使用 Internet Explorer 并假设您已打开其选项以执行 vbscript)这一事实使情况变得更糟。
    • 这很有帮助,现在我离我的目标又近了一大步,但我还没有完全实现。
    猜你喜欢
    • 2013-03-17
    • 2020-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-03
    • 2016-03-25
    • 1970-01-01
    相关资源
    最近更新 更多