Controller :
def get_nodes
...
render :text => nodes.to_json.to_s
end
它呈现有效的 JSON(它由我的 chrome 插件拾取并解析)
我在我的 JS 中使用它:
var nodes = $.get('http://localhost:3000/users/get_nodes/4fb2739045a86e0c5c000002');
console.log(nodes);
console.log 输出:/image/2l7pX.png
我能够成功获取数据,但我想要的只是将“responseText”保存到“nodes”变量中。
我通过用静态变量替换这个动态变量,成功地将其与此代码隔离(在这种情况下,它的行为符合预期)
最佳答案
$.getJSON()
和 $.get()
不会返回获取的 JSON 或其他响应。要检索它,您需要将成功处理程序传递给 getJSON()
,并且当数据可用时网络操作完成后它将被调用。
您还需要知道该函数通常是异步的,这意味着它会立即返回,一段时间后将使用检索到的数据调用您的成功处理程序。
请参阅getJSON
jquery doc获取信息。
$.getJSON('http://localhost:3000/users/get_nodes/4fb2739045a86e0c5c000002', function(data) {
// you can access your data here in the "data" variable passed to this success handler
console.log(data);
});
关于jquery - 使用 $.getJSON 将 Rails 渲染的 JSON 拉入 JavaScript(作为 JSON 对象),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10670288/