JavaScript和经典ASP:修剪变量至前五位数

时间:2015-11-27 23:57:05

标签: javascript asp-classic

我在结帐页面上有以下内容,只需要传递sSTFormZip变量的前五位数字。幕后发生了一些奇怪的事情,导致五位数的邮政编码字段附加了四个对返回客户不正确的数字。 (这是一个很长的故事,但缺点是它们重新利用最后四位数来确定那些跨越一个以上县的拉链的县。)

<input id="STZIP" type=TEXT name="ST_ZIP" maxlength="<%= oRFF.max_length %>" 
 value="<%= sSTFormZip %>" onChange="setRecalcFlag();">

当数据库存储类似92708-1234的内容时,如何使用92708填充字段?

在看到下面的建议之后,我在输入上面添加了这个,但它没有影响该字段:

<script>
    sSTFormZip = sSTFormZip.substring(0, 5);
</script>
<input id="STZIP" type=TEXT name="ST_ZIP" maxlength="<%= oRFF.max_length %>" 
 value="<%= sSTFormZip %>" onChange="setRecalcFlag();">

2 个答案:

答案 0 :(得分:2)

<%
dim s
sArray = Split(sSTFormZip,"-")
%>

<input id="STZIP" type=TEXT name="ST_ZIP" maxlength="<%= oRFF.max_length %>" 
value="<%= sArray(0) %>" onChange="setRecalcFlag();">

答案 1 :(得分:1)

如果您想获取sSTFormZIP变量的前五个字符,那么VBScript Mid函数就是您之后的函数:

Mid(sSTFormZIP, 1, 5)

应该返回前五个字符。 Mid的参数是:

  1. 要提取部分
  2. 的字符串
  3. 要提取的第一个字符的索引(基于1)
  4. 您要提取的字符数
  5. 您还可以使用Left功能:

    Left(sSTFormZIP, 5)
    

    将使用sSTFormZIP最左边的五个字符并将其返回。