Struts 2:带点或逗号的双精度值

时间:2014-04-15 08:41:29

标签: java json hibernate jsp struts2

我不能用点(例2.2)插入双值的问题,但是我可以用逗号插入它们(例如:2,2)。

但是当我想使用(JSP和Ajax)编辑它们时,即使我用逗号存储它们,它们也会出现(点),因此我必须编辑所有值!

场景如下:我想在我的应用程序中编辑一些double值(hibernate和struts2),我将值从action传递给JSP:

private Service Service;
    private Vehicule v;
    private Map<String, Object> map= new HashMap<>();

    public String query()
    {

            Service = new ServiceImpl();
            v = new Vehicule();
            v= Service.getVehiculeByImmat(field1);
            map.put("date", v.getdate().toString());
    map.put("kilometrage", v.getKilometrage());


    return "success";

    }

然后我在JSP中显示它们:

$(document).ready(function(){

      $('#field1').change(function(){


          var selectedValue = $('#field1').val();
            if ($.trim(selectedValue).length > 0) 
             {
          alert(selectedValue);
                $.ajax(
                {
                    type: 'POST', 
                    url  : "<s:url action='query'/>",
                    dataType : 'json',
                    data: { field1: selectedValue},
                    success: function(result){

                        $.each(result, function(key,value)
                        {                      $("#"+key).val(value);
                                    } );

                },

                 });

            }

        }
      );


    });

struts.xml

<action name="query" class="action.GestionVehicules" method="query">
          <result name="success" type="json">map</result>
    </action>

我的问题:可以用点插入双值吗?

1 个答案:

答案 0 :(得分:0)

默认语言环境与客户端预期不同。对于那些区域设置,分数数字格式也不同。您可以将美国语言环境设置为操作上下文,以便在序列化为JSON时使用它。根据这种语言环境,它使用小数部分分隔符和逗号进行分组。

ActionContext.getContext().setLocale(Locale.US);  

在返回结果之前执行此操作。