2013-04-03 3 views
1

я могу использовать Grails переменные в JavaScript, как это в моем GSP файле:Использование Grails переменных внутри импортирован файл яваскрипта

<g:javascript> 
var id= ${personInstance?.id} ; 
alert(id) ; 
</g:javascript> 

, но это не работает, когда я использую импортную JS файл, как это:

<g:javascript src="test.js"></g:javascript> 

test.js:

var id= ${personInstance?.id} ; 
alert(id) ; 

Как я могу использовать Grails переменного внутри импортирован файл JavaScript ??

ответ

4

GSP - это компоненты на стороне сервера: если вы поместите некоторые js внутри них, то будут решены переменные groovy. Внешние js извлекаются браузером на стороне клиента. По этой причине, AFAIK, вы не можете сделать то, что пытаетесь сделать.

+0

Я просто сохраняю все переменные, которым нужны значения на стороне сервера. –

2

Вы можете создать test.js в своем приложении grails или (возможно, намного лучше) сгенерировать объект или JSON со всеми необходимыми переменными и передать его в функции внешнего файла JavaScript.

+0

Действительно полезно! Спасибо! –

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