javascript - 要发送的 JQuery ajax 数据中的嵌套 map - 如何序列化 'properly'?

标签 javascript jquery ruby-on-rails ajax

    var location = { "location" : {
                    "name" : $("#user_loc_name").val(),
                    "street_address" : $("#user_loc_street_address").val(),
                    "city" : $("#user_loc_city").val(),
                    "province" : $("#user_loc_province").val(),
                    "country" : $("#user_loc_country").val(),
                    "postal_code" : $("user_loc_postal_code").val(),
                    "public" : $("#user_loc_public").attr('checked')
                }};
( ... )
$.post(url, location, success_callback);

我需要这个“嵌套” map 的原因是因为我要将它发送到我的 Rails 后端,我希望我可以在 Controller 中进行简单的更新 _ attributes(params[:location])。不幸的是,通过这个解决方案,我得到了参数:

{"location"=>"[object Object]", ...} 

不是我所希望的。我希望:

{"location"=> {"name" => "valforname", "street_address" => "valforstreetadress", ...}, <other params>...}

如果我摆脱“嵌套”并只发送内部映射,它工作正常,但每个属性单独显示在参数散列中,它只是麻烦和困惑。如果我可以将整个 map 嵌套在“位置”键下,那就更好了。

最佳答案

关于javascript - 要发送的 JQuery ajax 数据中的嵌套 map - 如何序列化 'properly'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1436212/

相关文章:

ruby-on-rails - 注册后欢迎快讯?

javascript - 如何将ExtJs框架导入Eclipse

javascript - 如何在 contenteditable 中的插入符处输入字符?

javascript - JQuery show() 方法没有按预期工作

javascript - 动画 DIV 到页面底部,然后再次点击动画到顶部

jquery - 如何仅将效果应用于悬停的元素?

ruby-on-rails - rails 路由: Treating hardcoded path as a parameter?

javascript - 如何在 HTML5 静音按钮中应用淡入淡出效果

javascript - 目标父容器并忽略 jQuery 中子输入复选框的单击事件

jquery - 打开 Bootstrap Modal 以在 Ruby on Rails 中编辑记录