我試圖將Rails生成的json轉換爲地圖上的Google地圖標記,但首先我只是試圖顯示該json,因爲我是新來的jQuery/JavaScript,並嘗試明白它。jQuery ajax未捕獲類型錯誤
不過,我一直堅持一個Chrome開發者控制檯錯誤消息我不明白:
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'
我嘗試使用代碼從各種教程/例子,但有沒有人工作。目前我的代碼看起來是這樣的:
$.ajax({
url: "http://localhost:3000/spots.json",
success: function(html){
$("#json").append(html);
}
});
所以這是從一個例子採取的,這種想法只是爲了展示一下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看起來是這樣的:
[{"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?他們的任何其他圖書館在谷歌地圖API以外的頁面? – epascarello
有沒有包含Mootools或Prototype的庫? – polarblau