Я имею несколько JS-функций, которые вызывают разные php-файлы с помощью метода $ .ajax jquery … вчера все было в порядке, но после очистки моего кода я не знаю, что я сделал, но теперь ответ ajax похож на "[space]data"
вместо "data"
..
я мог бы использовать функцию обрезки в Js, но я хочу исправить источник проблемы …
все мои php-файлы имеют недостающие последние ?>
, чтобы избежать этого, и до того, как <?php
я уверен, только что проверил, нет места …
почему я представил эту ошибку? это сервер? браузера?
Самое забавное, что вчера я очистил свой код с помощью JSLINT ..! плохая идея..
благодаря
Когда у меня была такая же проблема, это был просто возврат каретки или пробел после закрытия PHP-тега, что удивительно легко ввести случайно.
Убедитесь, что вы открыли PHP-тег в начале первой строки вашего скрипта, закройте его в конце и удалите все после закрытого тега (его должно легко заметить в хорошем редакторе).
Я не вижу причин, по которым не закрывать ваш тег PHP не просто будет очень раздражать … но это только я!
Я знаю, что я опоздал на эту тему, нашел ее, потому что у меня была такая же проблема. Я смог подтвердить, что, хотя вы можете очистить все интервалы в своей функции обратного вызова, все равно можно получить эти белые пробелы / каретки в тексте ответа (вы можете даже увидеть это в инструментах разработчика Chrome в разделе «Сеть», вкладка).
Поэтому я протестировал и обнаружил, что если вы поместите ob_clean();
в верхней части вашей функции обратного вызова, он очищает любое из этих пространств. Я не знаю много об этой функции, только что она упоминалась в кодексе ( http://codex.wordpress.org/AJAX_in_Plugins#Debugging ). Надеюсь, что это поможет любому, кто найдет здесь путь из-за той же проблемы
Если ваш ответ с сервера включает дополнительное пространство, то причиной этого является PHP-код. Если ваш ответ не включает дополнительное пространство, проблема должна быть в javascript.
Используйте Fiddler, чтобы проверить фактический ответ с сервера, чтобы увидеть, действительно ли в нем есть место. Вы наверняка знаете, есть ли проблема с PHP или JS. Затем вы можете опубликовать соответствующий код.