Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将Rails JSON与JQuery结合使用的简单示例?_Javascript_Jquery_Ruby On Rails_Json - Fatal编程技术网

Javascript 将Rails JSON与JQuery结合使用的简单示例?

Javascript 将Rails JSON与JQuery结合使用的简单示例?,javascript,jquery,ruby-on-rails,json,Javascript,Jquery,Ruby On Rails,Json,我正在寻找一个非常简单的示例,其中Rails应用程序执行以下操作: http://myapp.com/give_me_json 返回的数据是JSON: [{"is_it_working":true, "very_simple_string":"Yes!"}] 我想在JS中使用以下函数来返回“is_it_working”的值。但是怎么办 function updateImpression(){ $.get('/give_me_json', function(data) { $('.d

我正在寻找一个非常简单的示例,其中Rails应用程序执行以下操作:

http://myapp.com/give_me_json
返回的数据是JSON:

[{"is_it_working":true, "very_simple_string":"Yes!"}]
我想在JS中使用以下函数来返回“is_it_working”的值。但是怎么办

function updateImpression(){

$.get('/give_me_json', function(data) {
    $('.da_place').html(data);
}

相反,这会将整个json作为字符串返回。

您可以通过
数据访问它。它是否在
$中工作
method

还需要在get请求中指定'json',以便jquery知道如何处理返回的内容

实际上,响应是
json对象的
array
,因此需要首先从数组中获取元素,然后从json中获取属性

var response = [{"is_it_working":true, "very_simple_string":"Yes!"}];

//1 way
alert(response[0].is_it_working);

//2nd way
$(response).each(function(i,elem){
    alert(elem.is_it_working);
});

如果内容类型为文本

$.get('/give_me_json', function(data) {
    var response = $.parseJSON(data); // or eval(data)
    $('.da_place').html(response[0].is_it_working);
});
如果内容类型是JSON

$.get('/give_me_json', function(data) {
    $('.da_place').html(data[0].is_it_working);
}, "json");


-这是不对的,这行不通。。“data.is_it_working”返回未定义。在本例中,响应是json数组。查看我的答案以了解更多详细信息。如果mime类型错误并且JS没有为
$设置“json”数据类型选项,则不会。获取
。这就是问题所在。请尝试
console.log(data)
,查看您得到的是一个字符串,而不是一个已解析的对象,因为您省略了“json”参数。是的,但请查看@Diode对实际问题的回答。感谢大家的评论。我正在尝试每一种解决方案,看看哪一种更适合我:)我阅读了jQuery网站上关于json方法的内容,但不清楚如何访问键值对。
$.getJSON('/give_me_json', function(data) {
    $('.da_place').html(data[0].is_it_working);
});