Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / как приатачить переменную запроса в JavaScript / 10 сообщений из 10, страница 1 из 1
06.11.2016, 18:33
    #39342166
rema174
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как приатачить переменную запроса в JavaScript
у меня на странице JSP есть такой скрипт, который успешно работает

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
var lessons;
var _lesson;

$(document).ready(function() {

    _lesson = '${_lesson}';
    lessons= ${jsonLessonsArray}; /* line A */
    ...

]

где ${jsonLessonsArray} - это Json объект, который приходит из контроллера

теперь я переношу этот скрипт в файл и кладу его в папку ресурсы на сервере и подгружаю на страницу уже из ресурсов. теперь ошибка на line А

авторUncaught SyntaxError: Unexpected token {

Почему один и тоже скрипт работает на странице и не работает, если грузить его с сервера?
...
Рейтинг: 0 / 0
06.11.2016, 19:05
    #39342176
rema174
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как приатачить переменную запроса в JavaScript
что интересно, так ${_lesson} это тоже параметр запроса (не json) и его нужно брать в кавычки, а вот с ${jsonLessonsArray} (что является json) номер с кавычками не проходит - т.к. в этом случае переменная lessons будет представлять стринговую js переменную со значением "${jsonLessonsArray}", т.е. если ее кинуть в консоль, то выведется текст ${jsonLessonsArray}
...
Рейтинг: 0 / 0
06.11.2016, 21:35
    #39342220
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как приатачить переменную запроса в JavaScript
rema174у меня на странице JSP есть такой скрипт, который успешно работает
уже говорил, но ты очевидно забыл.
- скрипт выше проверь в том виде, в котором он на клиенте. Т.е. в ослике правый клик - Исходный код страницы.
Там уже не будет ${}.
Т.е. надо различать подготовку (компиляцию) JSP на сервере и работу JS на клиенте.
Они порознь работают. И лучше их не перемешивать для винегрета.
...
Рейтинг: 0 / 0
06.11.2016, 21:50
    #39342229
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как приатачить переменную запроса в JavaScript
rema174
Код: javascript
1.
2.
  _lesson = '${_lesson}';
    lessons= ${jsonLessonsArray}; /* line A */


выведи переменные console.log(переменная
...
Рейтинг: 0 / 0
06.11.2016, 22:13
    #39342242
rema174
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как приатачить переменную запроса в JavaScript
Petro123,
по-моему, ты не понял то, что я спрашивал...

я понимаю, что jsp готовится на сервере, а js на клиенте, и я успешно инициализирую на сервере переменную _lesson , т.о. на клиенте она уже заполнена

теперь, что касается var lessons ... во-первых, был неправильный синтаксис в js.
короче, она тоже проинициализирована уже на клиенте.

заметь, все что я написал выше работает, если код js непосредственно расположен в хедере - это важно отметить

теперь, сделаем ход конем : запишем код js в файл и подключим его в jsp
запускаем, и что мы видим - в js файле код не изменился, там все так же
Код: javascript
1.
_lesson = '${_lesson}';



таким образом, когда jsp инициализируется на сервере, то в нем еще не виден JavaScript, который подключается из файла, т.о. он не может его инициализировать - иначе не могу это объснить.

вывод : инициализировать в js параметрами запроса можно, если код js расположен непосредственно в JSP, а не линкуется

p.s. вот теперь комментируй :)
...
Рейтинг: 0 / 0
06.11.2016, 22:19
    #39342243
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как приатачить переменную запроса в JavaScript
rema174,
jsp транслируется в чистый java, который уже в выполняемый
...
Рейтинг: 0 / 0
06.11.2016, 22:31
    #39342249
rema174
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как приатачить переменную запроса в JavaScript
вадя,
так что же, код js должен быть в теле jsp, чтобы делать как я показывал выше? без вариантов?
...
Рейтинг: 0 / 0
06.11.2016, 22:59
    #39342256
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как приатачить переменную запроса в JavaScript
rema174,
честно - я не понял, что ты хочешь.
...
Рейтинг: 0 / 0
06.11.2016, 23:16
    #39342261
rema174
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как приатачить переменную запроса в JavaScript
вадя,
я в принципе разобрался: можно объявлять js переменные в Jsp с их инициализацией параметрами запроса, а все остально из линкованных js делать по этим переменным - тогда будет работать
...
Рейтинг: 0 / 0
06.11.2016, 23:52
    #39342277
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как приатачить переменную запроса в JavaScript
rema174,
надо только учесть, что линкованные файлы загружаются последовательно по запро,ам с клиента, для скорости js лучшу через include.
тогда Это будет одна загружанмая страница
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / как приатачить переменную запроса в JavaScript / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]