2017-06-13 67 views
0

我试图从一个ASP网页传递变量到另一个,但6个位数后不更新HTML输入时,我传递变量有更多然后5个位数它会导致我的HTML的输入不更新。传递ASP变量与前一页

这里就是变量期权价格创建

的index.asp

<%@ Language="VBScript" CodePage=65001 %> 

<% 
plan = Request("plan") 
If plan = "" Then plan = "1" 
modelid = Request("modelid") 
If modelid = "" Then modelid = "0" 
optionprice = Request("optionprice") 
If optionprice = "" Then optionprice = "0" 
'Responce.Write("optionprice=" & optionprice) 

'plan = Request.Form("plan") 
'If plan = "" Then plan = "1" 
'modelid = Request.Form("modelid") 
'If modelid = "" Then modelid = "0" 
'Response.Write("plan= " & plan) 
'Response.Write("modelid= " & modelid) 
dpop = Request.QueryString("dpop") 
If dpop = "on" Then dpop = "on" 
' Response.Write("dpop= " & dpop) 
%> 

页面和结果页面是 result_ct.asp

optionprice = Request.Form("optionprice") 
    If optionprice <> "" Then optionprice = optionprice * 1 
    optionprice_2 = optionprice 

下面是HTML形式和输入

的index.asp

<form NAME="form1" action="result_ct.asp" method="post" style="margin:0;"> 
<dl class="downpaymentform"> 
       <dt>諸費用・オプション代など</dt> 
       <dd><div class="input"><input type="text" name="optionprice" maxlength="7" class="blue" value="<%= optionprice %>"><p>円</p></div></dd> 
      </dl> 
</form> 

我敲我的头靠在墙上,任何帮助是非常感谢!

+1

这不是ASP.NET,这是传统的ASP。 – Dai

+0

感谢您的更正 –

+0

我们需要查看渲染“

”和“”元素的代码,并且您是通过GET还是POST提交表单? – Dai

回答

2

我要说的是,这个问题很可能是在此代码

If optionprice <> "" Then optionprice = optionprice * 1 
optionprice_2 = optionprice 

比这更确切地说,有以下和使用CLng(转换为长功能)

If optionprice <> "" 
    optionprice_2 = CLng(optionprice) 
else 
    optionprice_2 = 0 
end if 

如果是小数点后,用CDbl代替。

它失败的原因是,你试图将它转换为数字乘以1,意味着你将它乘以一个整数,所以它将试图将它转换为一个整数,其范围为-32,768至32,767。所以大于32,767的任何东西都会失败。

长可以是整数范围为-2147483648到2147483647。

双范围为-1.79769313486232E308一个双精度浮点数到-4.94065645841247E-324为负值; 4.94065645841247E-324至1.79769313486232E308为正值。