Javascript jQuery ajax未捕获类型错误
我试图将Rails生成的json传输到地图上的GoogleMaps标记中,但首先我只是尝试显示那个json,因为我不熟悉jQuery/JavaScript并试图理解它 然而,我一直被一条我不理解的Chrome开发者控制台错误消息所困扰:Javascript jQuery ajax未捕获类型错误,javascript,jquery,ajax,google-maps,Javascript,Jquery,Ajax,Google Maps,我试图将Rails生成的json传输到地图上的GoogleMaps标记中,但首先我只是尝试显示那个json,因为我不熟悉jQuery/JavaScript并试图理解它 然而,我一直被一条我不理解的Chrome开发者控制台错误消息所困扰: Uncaught TypeError: Object function $(element) { if (arguments.length > 1) { for (var i = 0, elements = [], length = argumen
Uncaught TypeError: Object function $(element) {
if (arguments.length > 1) {
for (var i = 0, elements = [], length = arguments.length; i < length; i++)
elements.push($(arguments[i])); return elements;
}
if (Object.isString(element)) element = document.getElementById(element);
return Element.extend(element);
} has no method 'ajax'
这是从一个示例中提取的,其目的只是展示json请求返回的内容。我的想法/代码中一定有一些根本性的错误,因为我就是不能让它工作
所以我的问题是:我应该如何读取该错误,然后如何让这段代码从spots.json获取json并在我的html中的#json div中显示它
谢谢大家!
**附录**
下面是完整的spots.js文件:
$(document).ready(function() {
var latlng = new google.maps.LatLng(60.17, 24.93);
var myOptions = {
zoom: 12,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"),
myOptions);
$.ajax({
url: "http://localhost:3000/spots.json",
success: function(html){
$("#json").append(html);
}
});
});
spots.json如下所示:
$.ajax({
url: "http://localhost:3000/spots.json",
success: function(html){
$("#json").append(html);
}
});
[{"spot":{"address":"","category":"Ramppi","created_at":"2011-07-13T14:06:44Z","latitude":60.171916,"title":"Kiasman \"Design-ramppi\"","updated_at":"2011-07-13T14:06:44Z","id":1,"area":"Helsinki","description":"","longitude":24.935875}},{"spot":{"address":"","category":"Puuli","created_at":"2011-07-13T14:07:07Z","latitude":60.176526,"title":"Tattipuuli","updated_at":"2011-07-13T14:07:07Z","id":2,"area":"Helsinki","description":"","longitude":24.919395}}]
查看代码中
$
的定义,您似乎也在使用原型框架。使用多个库时的一个问题是它们会覆盖变量,主要是$
在您的情况下,使用
jQuery
而不是$
(因此jQuery.ajax(…)
),或者使用将$
还原回jQuery。查看代码中$
的定义,您似乎也在使用原型框架。使用多个库时的一个问题是它们会覆盖变量,主要是$
在您的情况下,使用
jQuery
而不是$
(因此jQuery.ajax(…)
),或者使用将$
还原回jQuery版本。您使用的是什么版本的jQuery?除了GoogleMapsAPI,页面上还有其他库吗?有没有像Mootools或Prototype这样的库?您使用的是什么版本的jQuery?除了google maps api,他们的页面上还有其他库吗?还有像Mootools或Prototype这样的库吗?谢谢,这解决了这个奇怪的错误,尽管我仍然从服务器得到一个空响应。不过,现在我至少可以试着做点什么了。谢谢谢谢,这解决了这个奇怪的错误,尽管我仍然从服务器得到一个空响应。不过,现在我至少可以试着做点什么了。谢谢