Javascript 使用jQuery';使用Rails表单序列化数组

Javascript 使用jQuery';使用Rails表单序列化数组,javascript,jquery,ruby-on-rails-3,json,Javascript,Jquery,Ruby On Rails 3,Json,我试图在结帐过程的最后一个屏幕上显示订单摘要(内置于Rails 3中)。在此之前没有提交任何内容,因此我使用jQuery的serializeArray()从表单字段中获取所有名称和值,效果非常好。我收集了各种嵌套属性,因此返回的数组非常繁忙,名称有order[investments\u attributes][0][amount\u in\u美圆] 是否有一种简单的方法,用Javascript(或使用jQuery)将这些名称和值转换为JSON字符串(这将使生成摘要输出更加容易)。例如,类似于:

我试图在结帐过程的最后一个屏幕上显示订单摘要(内置于Rails 3中)。在此之前没有提交任何内容,因此我使用jQuery的
serializeArray()
从表单字段中获取所有名称和值,效果非常好。我收集了各种嵌套属性,因此返回的数组非常繁忙,名称有
order[investments\u attributes][0][amount\u in\u美圆]

是否有一种简单的方法,用Javascript(或使用jQuery)将这些名称和值转换为JSON字符串(这将使生成摘要输出更加容易)。例如,类似于:

{
  "order": {
    "donations_attributes": [
      {
        "amount_in_dollars": 50.95,
        "category": "Some Fund"
      },
      {
        "amount_in_dollars": 90.92,
        "category": "Some Other Fund"
      }
    ],
    "billing_address_attributes": {
      "first_name": "Bob",
      "last_name": "Smith",
      "address1": "123 Whatever Street",
      "and so on": "etc"
    }
  }
}

请记住,我还没有提交任何东西(我也不能),所以我不能在Ruby中完成。有没有一种明显、直接的方法可以做到这一点,或者我需要手工解析并构建字符串?

您可以将该数据原样传递给
JQuery.ajax(…)
中的
data
参数,它最终会出现在您调用的操作的控制器方法和视图中的
parama
,例如
params[:order][:捐赠\u属性][0][:类别]==“一些基金”


如果要将新url加载到浏览器中,可以对数据使用
JQuery.serialize()
,并将其附加到url(中间有一个“?”),以创建具有适当查询字符串的url。

可以将该数据原样传递到
JQuery.ajax(…)中的
数据
参数
,它将在您调用的操作的控制器方法和视图中的
parama
中结束。例如
params[:order][:investments\u attributes][0][:category]==“Some Fund”


如果要将新url加载到浏览器中,可以对数据使用
JQuery.serialize()
,并将其附加到url(中间有一个“?”),以创建具有适当查询字符串的url。

感谢您的回答,但在阅读
JQuery.ajax()之后
,我不清楚这如何在不提交的情况下得到我正在寻找的JSON字符串。(如果有帮助,我将使用mustache.js生成订单摘要。这一切都必须在不向服务器发出请求的情况下完成。)感谢您的回答,但在阅读了
jQuery.ajax()之后
,我不清楚这如何在不提交的情况下获得我正在寻找的JSON字符串。(如果有帮助,我将使用mustache.js生成订单摘要。这一切都必须在不向服务器发出请求的情况下完成。)