#javascript #jquery #ajax
Вопрос:
Я в замешательстве по этому поводу.
Я пытаюсь вызвать другую определенную функцию в AJAX, и я получаю ошибку «функция не найдена».
Я также попытался объявить это как переменную и использовать, но все равно получаю ту же проблему, не могу найти функцию.
var self = this
...
$.post.done(function(respose) {
self.init_customer_dropdown();
})
Если я вызову функцию вне AJAX-запроса, она будет работать нормально
Вот полный блок кода
$('.save-client-modal').on('click', function(e) {
e.preventDefault();
//Save Cutomer to Database
var url = admin_url "clients/create_client_ajax";
var data = {};
...
$.post(url, data).done(function (response){
response = JSON.parse(response);
if(response.success == true || response.success == "true")
{
init_customer_dropdown(); <-- will not run this function
}
else
{
alert_float('warning', response.message);
}
});
});
function init_customer_dropdown()
{
alert("Customer Dropdown");
}
Заранее спасибо
Майк
Комментарии:
1. Здравствуйте, внутри работает какой-нибудь код
.done()
? Я имею в виду, доresponse
разбора. Если это так, это означает, что если оператор не работает — могут возникнуть проблемы с синтаксическим анализом.2. Кроме того, попытайтесь выйти
init_customer_dropdown()
за рамки jQuery.3. Json. parse удаляет неопределенные свойства.,просто выйдите к черту из своего кода на каждом шаге, и точная проблема станет очевидной