首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用JQuery将数据放入Rails

如何使用JQuery将数据放入Rails
EN

Stack Overflow用户
提问于 2009-05-25 20:10:20
回答 4查看 35K关注 0票数 50

我正在尝试发送一个jquery ajax PUT请求,如下所示:

代码语言:javascript
复制
$.ajax({
          type: "PUT",
          url: '/admin/pages/1.json',
          data: { page : {...} },
          dataType: 'json',
          success: function(msg) {
            alert( "Data Saved: " + msg );
          }
});

但我得到以下错误:

代码语言:javascript
复制
The error occurred while evaluating nil.name
    /Library/Ruby/Gems/1.8/gems/activesupport-2.3.2/lib/active_support/xml_mini/rexml.rb:29:in `merge_element!'
    /Library/Ruby/Gems/1.8/gems/activesupport-2.3.2/lib/active_support/xml_mini/rexml.rb:18:in `parse'
    (__DELEGATION__):2:in `__send__'
    (__DELEGATION__):2:in `parse'
    /Library/Ruby/Gems/1.8/gems/activesupport-2.3.2/lib/active_support/core_ext/hash/conversions.rb:154:in `from_xml' ... ...

就像Rails试图将参数解析为XML一样,但我想使用JSON!!

我应该怎么做才能把JSON放到rails上?

EN

回答 4

Stack Overflow用户

发布于 2009-05-25 21:23:03

好吧,实际上我的JSON数据没有页面键,这是我的错误。这就是它不能正确解析的原因。但是现在我得到了"object Object“字符串作为页面键的值,而不是一个解析得很好的json对象。

我应该看哪里: JQuery还是Rails?

编辑:

我已经用下面的脚本解决了json对象字符串的问题: www.json.org/js.html:

代码语言:javascript
复制
$.ajax({
      type: "PUT",
      url: '/admin/pages/1.json',
      data: { page : JSON.stringify( {...} ) },
      dataType: 'json',
      success: function(msg) {
        alert( "Data Saved: " + msg );
      }
});

在rails方面,必须使用json gem。在控制器中:

代码语言:javascript
复制
 params[:page] = JSON.parse params[:page] if params[:page].is_a? String
票数 5
EN

Stack Overflow用户

发布于 2016-10-27 19:50:14

代码语言:javascript
复制
var id = $('#route_id').val()
$.ajax({
    type: 'PUT',
    url:  '/routes/'+ id,
    data: $('#markerform').serializeArray(),
    dataType: "JSON",
    success: function(data) {
        console.log(data);
    }
});
票数 2
EN

Stack Overflow用户

发布于 2009-12-07 21:00:37

我用jQuery/rails有一个类似的问题对象,但用的是HTML,而不是JSON。或许这能帮上忙-

[object Object]的参数

代码语言:javascript
复制
data: { lesson: { date: drop_date } }

lesson[date]的参数

代码语言:javascript
复制
data: { "lesson[date]": drop_date }

希望这能帮上忙-

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/907910

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档