各位大哥大姐好:
我遇到这么个问题,我的平台是JSP+BV开发的,Oracle数据库,开发人员已经很久不在了。
我现在只是想实现一个简单的读取然后简单运算下再显示的功能。
页面读取价格字段的写法为:<%= SD_showPrice(oid, goodsList.PRICE.doubleValue) %>
其中PRECE为产品价格字段,数据类型为货币型,因为读取出来为“¥3280”。
然后我想实现的功能就是要把这个价格读取出来后*0.8然后显示。
现在我是这么写的:
<%
var a = SD_showPrice(oid, goodsList.PRICE.doubleValue);
var a = a * 0.8;
response.write(a);
%>
但是显示出结果为:NAN
如果屏蔽掉第二行即//var a = a *.8;
则能正常显示价格。
我估计是不是a读出的价格是货币型不能直接运算,是否要转换下数据类型,但是小弟此步骤不知道该怎么写,非常感谢各位能给予指点迷津,非常感谢!

解决方案 »

  1.   

    你为什么不直接在JAVA代码中间处理这个?
      

  2.   

    对不起。我不会,还望大哥多指教,怎么个在“JAVA代码中间处理”法呢?能不能具体写写看。
      

  3.   

    <%
     
    String str=SD_showPrice(oid, goodsList.PRICE.doubleValue);\\把这个函数的相关代码写出来
    str=str.substring(1);
    int n=Integer.parseInt(str);
    n=n*0.8;
    str=SD_showPrice(oid, n)
    %>
    页面读取价格字段的写法为:<%=str%>
      

  4.   

    非常感谢这位热心的大哥,但是抱歉的很,小弟找不到SD_showPrice这个函数他是在哪里调用过来的。看看你还有没有别的办法呢?
      

  5.   

    var a = a * 0.8;是不是改成 a=a*0.8?
      

  6.   

    LS的兄弟好像 这里面输出的不是字符型MS不能直接乘的