经典的ASP格式编号错误

时间:2016-06-10 14:21:26

标签: asp-classic

我是经典asp的新手,所以我试图理解导致错误的以下代码

<input class="uploadCalcField" type="text"  size="12" name="<%="upload" & "z" & rs("e_cat_id") & "z" & l2_id & "z" & l1_id%>" value="<%=formatnumber(Request.Form("upload" & "z" & rs("e_cat_id") & "z" & l2_id & "z" & l1_id), 0)%>" onClick="this.blur();">

错误是

  

类型不匹配:&#39; formatnumber&#39;。

我检查了

的输出
Request.Form("upload" & "z" & rs("e_cat_id") & "z" & l2_id & "z" & l1_id)

并且它似乎是空的,是否可以帮助我理解错误?

1 个答案:

答案 0 :(得分:2)

FormatNumber()失败,因为正如您在问题中指出的那样,来自Request.Form()的格式化值是空的。

当使用Request.Form POST将HTML表单提交给Classic ASP时,method集合由Classic ASP构建。

这是一个简单的例子

<html>
  <head>
    <title>Test Form Submission to Classic ASP</title>
  </head>

  <body>
    <form method="POST" action="/test.asp">
      <input type="text" name="testinput" value="hello world" />
      <input type="submit" value="Submit Form" />
    </form>
  </body>
</html>

在浏览器中按下Submit Form按钮时,会生成HTTP请求并将其发送到Web服务器,在本例中为Classic ASP进行处理。

POST http://example.com/test.asp HTTP/1.1
Host: example.com

testinput=hello%20world

*会传递更多标题但会删除以保持示例简单

Classic ASP获取键值对的字符串并填充Request.Form集合

test.asp (在HTML页面中按下Submit Form按钮时调用)

<%
Call Response.Write(Request.Form("testinput"))
%>

输出:

hello world