Я делаю следующий jQuery ajax вызов функции codeigniter php:
var html =""; $.ajax({ type:"POST", url: "Ajax/getHtml", data: { u : contents }, dataType: 'html', success: function(data) { html = data; }, error: function(jqXHR, textStatus, errorThrown) { console.log('error'); console.log(jqXHR,textStatus, errorThrown); } }); console.log('html', html);
Это работает правильно, и html возвращается с успехом, который я вижу, если я записываю данные на консоль. Однако, похоже, я не могу уловить ответ HTML в переменной javascript. Я объявил один (html) глобально. Когда я смотрю на консоль, я вижу:
html jquery-2.1.1.js:8623 XHR finished loading: POST "http://localhost/b1/Ajax/getHtml".
Я не знаком с javascript, но это выглядит не по порядку, поэтому я считаю, что проблема заключается в том, что асинхронный характер javascript делает сценарий движением вперед, не дожидаясь, когда запрос ajax вернет результаты.
Имеет ли это смысл и как мне это исправить?