2017-06-13 5 views
0

変数を1つのasp Webページから別のWebページに渡そうとしていますが、5桁以上の変数を渡すと、更新。ここで前のページから6桁のasp変数を渡した後、HTML入力が更新されない

変数optionprice

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ではありません。これはClassic ASPです。 – Dai

+0

訂正ありがとう –

+0

」要素と「」要素をレンダリングするコードを見て、GETまたはPOST経由でフォームを送信していますか? – Dai

答えて

2

私は、問題は、このコードではなく、これよりも

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

におそらくあると言う以下を持っており、それがAであればCLng(長い関数に変換します)

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

を使用します代わりにCDblを使用してください。

なぜそれが失敗するのかは、数値を1に掛けることによって数値にキャストしようとすると、整数で乗算していることを意味します。したがって、範囲を持つ整数としてキャストしようとします。 -32,768〜32,767。したがって、32,767を超えるものは失敗します。

longは、-2,147,483,648〜2,147,483,647の範囲の整数にすることができます。

doubleは負の値の場合は-1.79769313486232E308〜-4.94065645841247E-324の倍精度の浮動小数点数です。正の値の場合は4.94065645841247E-324〜1.79769313486232E308です。