Chr*_*dom -2 api ajax jquery typeerror
您好我正在尝试使用Wunderground Weather API,但我在按钮点击请求信息时遇到麻烦.这是工作开放线提供:
jQuery(document).ready(function($) {
Run Code Online (Sandbox Code Playgroud)
以下是我将其更改为:
jQuery('#GetWeather').click(function($) {
Run Code Online (Sandbox Code Playgroud)
当我点击按钮时,我得到一个firebug错误:
TypeError: $.ajax is not a function
[Break On This Error]
success : function(parsed_json) {
Run Code Online (Sandbox Code Playgroud)
我不知道为什么它不会工作,但这是其余的代码...希望它有所帮助:
jQuery('#GetWeather').click(function($) {
var PostCode="PL9 9UT";
$.ajax({ url : "http://api.wunderground.com/api/2508132ae0c7601a/geolookup/conditions/q/UK/"+PostCode +".json",
dataType : "jsonp",
success : function(parsed_json) {
var icon = parsed_json['current_observation']['icon'];
var temp_c = parsed_json['current_observation']['temp_c'];
var feelslike_c = parsed_json['current_observation']['feelslike_c'];
var visibility_mi = parsed_json['current_observation']['visibility_mi'];
var UV = parsed_json['current_observation']['UV'];
var relative_humidity = parsed_json['current_observation']['relative_humidity'];
var wind_mph = parsed_json['current_observation']['wind_mph'];
var pressure_mb = parsed_json['current_observation']['pressure_mb'];
var wind_string = parsed_json['current_observation']['wind_string'];
var weather = parsed_json['current_observation']['weather'];
var imageurl = "http://192.168.0.4/DesktopVersion/Inc/Images/Weather/";
$('.Wicon').css('background-image',"url("+imageurl +icon +".svg)");
$('#GetWeatherTemp').html(temp_c +"°");
$('#GetWeatherFeel').html("Feels Like " +feelslike_c +"℃");
$('#GetWeatherVis').html(visibility_mi +" Miles");
$('#GetWeatherUv').html(UV);
$('#GetWeatherHumid').html(relative_humidity +"%");
$('#GetWeatherWind').html("Wind Speed " +wind_mph +"Mph");
$('#GetWeatherPress').html(pressure_mb);
$('#GetWeatherState').html(weather);
}
});
});
Run Code Online (Sandbox Code Playgroud)
这行是你的问题:
jQuery('#GetWeather').click(function($) {
Run Code Online (Sandbox Code Playgroud)
在document.ready处理程序中,jQuery传入,以便您可以方便地将其别名$以便兼容.但是,使用click处理程序时,第一个参数是一个事件对象,这意味着您将$使用事件引用覆盖jQuery简写().