2016-06-01 2 views
0

У меня есть этот кусок кодаAJAX responsetext возвращает неопределенное

(function(){ 
    $.ajax({ 
     type: "POST", 
     url: "g.php", 
     data: {g:""+a} 
    }).always(function(a,b,c){ 
     console.log(c.responseText); 
     if (c.responseText.length < 45) { 
      return "error"; 
     } else return (c.responseText); 
    }); 
}()) 

Если я пытаюсь присвоить его переменной не определено, возвращается; однако, если я консолью.log, ожидаемое значение возвращается ... его очень запутанное ...

Как я могу извлечь ответ, я где-то читал о обратных вызовах, но это не помогло. Я попытался перестроить код во многие моды без каких-либо результатов.

- Почему console.log печатает правильный результат или неопределенный с любой другой функцией?

+0

Я не вижу, где вы назначаете любую переменную, но 'return' заявления, конечно, подозрительно. –

+0

Код выше - это вызов ajax, который возвращает ошибку, если ответ с сервера короче 45 символов ... –

ответ

0

Я не уверен, но проверьте, будет ли он работать с DATATYPE JSON

$.ajax({ 
     type: "POST", 
     url: "g.php", 
     dataType: 'json' 
     data: {g:""+a} 
    }) 
+0

не работает, он недействителен код –

+0

У вас также отсутствует запятая, после типа данных –

+0

Opps, да, извините, запятая должна быть там. А также вам нужно разобрать json, прежде чем использовать его – Elnoor

Смежные вопросы