【问题标题】:posting JSON object with jquery使用 jquery 发布 JSON 对象
【发布时间】:2015-03-26 21:42:55
【问题描述】:

我有一个 JSON 对象:

var formData = {"field1":field1, "oper1":oper1, "value1":value1, "field2":field2, "oper2":oper2, "value2":value2, "field3":field3, "oper3":oper3, "value3":value3};

我正在尝试用

发布它
$.post("<%=request.getRequestURL().toString()%>getXML.jsp", formData, function(response){getXML(response)});

我需要将帖子设为 formData = {json object},这样我就可以使用 request.getParameter("formData") 从请求对象中获取它。

但是,请求中的每个 key:value 都会发布所有内容,因此我无法通过 formData 名称获取对象。我尝试在 jquery 调用中对对象进行字符串化并将 formData 更改为 {"formData":formData},但似乎没有任何效果。 {"formData":formData} 以这种格式放置参数:

formData[field1]    lname
formData[field2]    fname
formData[field3]    title
formData[oper1]     contain
formData[oper2]     contain
formData[oper3]     contain
formData[value1]    smith
formData[value2]    
formData[value3]

有没有办法将对象作为变量名“formData”传递?

【问题讨论】:

  • 尝试只包装数据,例如{formData: formData} ?
  • 是的。它提供与 {"formData":formData} 相同的输出

标签: java javascript jquery json


【解决方案1】:

您可以使用一个相关的 Model 对象,该对象将 json 保存为刺痛。之后,您可以 post model 对象。

【讨论】:

    【解决方案2】:

    使用以下方法解决了问题:

    $.post("<%=request.getRequestURL().toString()%>getXML.jsp", {"formData":JSON.stringify(formData)}, function(response){getXML(response)});
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-12-08
      • 1970-01-01
      • 2013-05-31
      • 1970-01-01
      • 1970-01-01
      • 2015-06-14
      • 2011-04-28
      • 1970-01-01
      相关资源
      最近更新 更多