2016-09-08 3 views
-3

Ok, так что следующее, что я хочу добиться:JQuery Ajax получить/сообщение для файла JavaScript

Я хочу использовать JQuery для загрузки файла внутри моего файла JavaScript. Нормальный вы можете сделать запрос $.ajax с POST в файл .php. И выберите что-то в базе данных, которая выглядит как POST, с которой я поменялся. Теперь я хочу то же самое, но вместо этого используя файл .php, я буду использовать файл .js.

Это также работает, код загружает файл с текстом alert('Hello World!'); и показывает предупреждение. Все в порядке. Но то, что я хочу, когда загружаю этот файл .js, ему нужно отправить ему значение. Так может быть alert(data);, и он скажет привет мир. Как я могу достичь этого, не используя файлы cookie или что-то еще, что хранит значения.

+3

Вы не можете отправить данные в файл JS, поскольку у него нет способа получить его из запроса. –

+0

@RoryMcCrossan не работает для моей проблемы? –

+0

Не совсем, нет. Вы можете настроить сервер для обработки JS-файлов, но это эквивалентно простому запросу на страницу PHP и, возможно, менее безопасному. –

ответ

0

EDIT: этот запрос GET, запрос POST не допускается. Если вы не используете переменные GET для перезаписи вашего файла javascript перед его возвратом, вы не можете его изменить или сделать что-то другое, кроме того, что произойдет, если вы просто попросите его с тегом <script> с атрибутом async./edit

Ну, я только что узнал что-то новое. Вы можете получить файл JavaScript с AJAX вызова и выполнить его с помощью eval, но я почти 100% уверен, что это не так, как вы должны делать то, что вы пытаетесь сделать (также - when is JavaScript's eval() not evil)

$.ajax({ 
    url: '/path/to/script', 
    type: 'GET', 
    success: function (response) { 
     eval(response.toString()); 
    }; 
}); 

Вы вызываете сервер, который затем возвращает файл javascript, и вы анализируете его как javascript, используя eval. Я никогда не думал об этом, но я предположил, что это один из способов загрузки файла javascript по требованию.

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