私はJSPページの数値書式チェンジャーを開発しています。 私はスクリプトによって操作されるいくつかの金額を持っています。私は2つのセッション変数 "userThousandSeparator"と "userDecimalSeparator"を持っています。これは2つのシンボルを含み、ほとんどがです。および,。外部JavaScriptファイルのセッション変数を呼び出す
JSPファイルは構造
<html>
<body>
...
<span class="list-group-item list-group-item-sm">Instructed amount<span class="pull-right"><em id="instructedAmount"class="numberField">${instructedAmount}</em> <em id="instructedAmountCurrency">${instructedAmountCurrency}</em></span></span>
<span class="list-group-item list-group-item-sm">Counter value amount<span class="pull-right"><em id="counterValueAmount class="numberField">${counterValueAmount}</em> <em id="counterValueAmountCurrency">${counterValueAmountCurrency}</em></span></span>
...
<script src="js/numberFormatting.js"></script>
</body>
</html>
N umberFormatting.jsを以下ましたが、セッション変数によって千と小数点の記号を交換するために、次のコードが含まれています。
function handleNumericFields(){
$('.numberField').each(function(){
var amount = $(this).text();
var splittedValues = amount.split(/[,.]/);
amount = "";
for(var i=0 ; i < (splittedValues.length - 1) ; i++){
amount += splittedValues[i];
if(i < (splittedValues.length - 2)) {
amount += "${sessionScope.userThousandSeparator}";
}
}
amount += "${sessionScope.userDecimalSeparator}";
amount += splittedValues[splittedValues.length - 1]
$(this).text(amount);
});
}
$(document).ready(function() {
handleNumericFields();
});
さて問題はさこれを私のJSPで<script>
タグの間に追加すると、これは完全に動作します。しかし今、私はこのスクリプトを別々のファイルに追加したいので、これを複数のJSPの に使うことができますが、今は問題があります。
は、例えば数500,005.00は500 $ {} sessionScope.userThousandSeparator 005 $ {} sessionScope.userDecimalSeparator 00
はなぜ私のスクリプトは、セッション変数をもう知っていないとどのように修正するようにフォーマットされますこの?