搜索

首页  >  问答  >  正文

javascript - form表单提交,后台实体类接收转义问题

问题:前台表单用ajax提交,data为validateForm.serializeArray(),后台用实体类接收参数,&符号被转义为&但是从request中直接取值是没问题的,请问如何解决实体类接收到的参数的转义问题。

代码如下:

前台代码:

var formData = validateForm.serializeArray();

$.ajax({
    type: 'POST',
    cache: false,
    url: basepath + "/newProjectAdjustment/saveProjectAdjustmentInfo.do",
    data: formData,
    dataType: "json",
    async:false,
    success: function (result) {
        if (result.success) {
            saveFlag = true;
        } else {
            parent.$.messager.alert("提示", result.msg != "操作成功" ? result.msg : projMessage.get("C008"), "info");
        }
    },
    error: function (result) {
        parent.$.messager.alert("提示", projMessage.get("C008"), "info");
    }
});
return saveFlag;
后端代码:
@RequestMapping(value = "saveProjectAdjustmentInfo.do", method = RequestMethod.POST)
@ResponseBody
public AjaxJson saveProjectAdjustmentInfo(HttpServletRequest request, ProjectAdjustmentDTO projectAdjustmentInfo) throws InvocationTargetException, IllegalAccessException {
    Map params = FormFormatterUtil.formatFrom2Map(request);
 
    AjaxJson result = new AjaxJson();
   
    return result;
}

Debug:
这是实体类中接收的参数:

这是request种接收的参数:

PHP中文网PHP中文网2736 天前936

全部回复(2)我来回复

  • 某草草

    某草草2017-06-23 09:15:32

    在实体参数前面加@RequestBody试试

    回复
    0
  • 滿天的星座

    滿天的星座2017-06-23 09:15:32

    在实体类的set方法中使用StringEscapeUtils.unescapeHtml4()就能反转义。

    回复
    0
  • 取消回复