2017-03-07 36 views
1

我想获得我使用查询-AJAX-POST-Request创建的元素的id,但是迄今为止我找到的方法都没有工作。使用jquery获取在rails中创建的对象的ID

目前,我坚持在这里

控制器:

def createuserlink 
    @new_element = Link.new(element_params) 
    @new_element.save 
    respond_with @new_element 
end 

的Jquery:

$.ajax({ 
    url: "links/createuserlink", 
    type: "POST", 
    data: my_data 
    }).done(function(data, textStatus, request) { 
    alert(data); 
    }); 

的请求作品和new_element被创建,但警报的消息显示我的HTML- new_element/show页面的代码。我可以在浏览器开发工具(如foo.com/element/42)中看到返回的页面的ID,但我不知道如何访问它。

我尝试使用getResponseHeader作为建议here,但它只适用于参数(如foo.com?element=42)。

我也试过respond_with @new_element.id,但他不喜欢这个语法。

什么是最简单和推荐的方式来取回id?

+1

创建createuserlink.js.erb或createuserlink.js.haml文件显示您的数据。请参考这个答案。 http://stackoverflow.com/a/18900799/2681997。 –

回答

2

看起来不是respond_with,为什么不尝试一下像你想的JSON,不是一个模板,:

def createuserlink 
    @new_element = Link.new(element_params) 
    @new_element.save 
    render json: @new_element.to_json 
end 
相关问题