Я пытаюсь вернуть список сеансов фильмов, играющих в заданном радиусе. У меня есть класс JavaScript, который я создаю для отображения данных из API. Я действительно следовал примеру, приведенному от here. Я знаю, что это какая-то проблема, потому что, если я переведу свою функцию обратного вызова (dataHandler) вне класса, тогда она работает нормально.
Вот мой класс (ошарашенный) - Если я запустил этот код, так как он здесь, я получаю ссылку на ошибку, «dataHander is undefined».
Заранее благодарен! Надежда есть достаточно информации здесь, чтобы помочь ..
function Locator() {
// Init
function init(){
test();
};
function test() {
// construct the url with parameter values
var apikey = "myapikey";
var baseUrl = "http://data.tmsapi.com/v1";
var showtimesUrl = baseUrl + '/movies/showings';
var zipCode = "78701";
var d = new Date();
var today = d.getFullYear() + '-' + (d.getMonth()+1) + '-' + d.getDate();
// send off the query
$.ajax({
url: showtimesUrl,
data: { startDate: today,
zip: zipCode,
api_key: apikey,
jsonp: "dataHandler"
},
dataType: "jsonp",
});
// callback to handle the results
function dataHandler(data) {
console.log(data);
}
};
init();
// Return
return {
};
};
Вы можете удалить много ненужных запятой после закрывающей скобки для функции (например, после того, как ' init'), но что еще более важно, вы используете этот код на 'document.ready'? – mc10
Спасибо за подсказку! Очень признателен. Этот экземпляр этого класса создается на document.ready – tbourne89