前端AJAX传入double类型,后台怎么获取
前台:$("input").keyup(function(){ var v =$("input").val(); $.post("/xxx/url/xxx",{doubleData:v},function(result){ $("span").html(result); });});后台:Double doubleData = Double.valueOf(getPara("doubleData"));如果有很多这样的取值地方, 可以对 BaseController进行增强一下:public Double getParaToDouble(String name, Double defaultValue) { return toDouble(getRequest().getParameter(name), defaultValue);}private Double toDouble(String value, Double defaultValue) { try { if (StrKit.isBlank(value)) return defaultValue; value = value.trim(); return Double.valueOf(value); } catch (Exception e) { throw new ActionException(400, RenderManager.me().getRenderFactory().getErrorRender(400), "Can not parse the parameter \"" + value + "\" to Double value."); }}这样就可以:Double doubleData = getParaToDouble("doubleData");
不要使用URL-挂参: 如xxx/1-2.0-3就没事.
前端看教程:$.post() 方法使用 HTTP POST 请求从服务器加载数据。