Введите предложение JQuery в тег GSP Grails - PullRequest
0 голосов
/ 19 марта 2019

Я получаю ошибку множественной компиляции, когда пытаюсь использовать предложение jQuery в граиле <g:link> tag

var ul = $("#authorList > ul");
ul.append('<li><g:link action="show" controller="author" id="'+$('#authorID').val()+'">+'+$('#authorField').val()+'</g:link></li>')

Я получаю только ошибку с jquery внутри атрибута id = "",с этим

ul.append('<li><g:link action="show" controller="author" id="">+'+$('#authorField').val()+'</g:link></li>')

Страница работает, но я не могу получить динамические ссылки, каков правильный синтаксис?


URI: / ComplexTables / book /создать класс
org.codehaus.groovy.control.MultipleCompilationErrorsException
Сообщение: сбой запуска: 19: недопустимый символ тела строки после знака доллара;решение: либо экранировать буквальный знак доллара "\ $ 5", либо заключить в скобки выражение значения "$ {5}" @ строка 19, столбец 210. l () \ '"', 35, it) {return" '+ $ ('#authorI ^ 1 error


Вокруг 35-й строки приложения grails-views \ book_form.gsp

function appendAuthor(ev) {
34:        var ul = $("#authorList > ul");
35:        ul.append('<li><g:link action="show" controller="author" id="'+$('#authorID').val()'">+'+$('#authorField').val()+'</g:link></li>')
36:    }
37:</script>

1 Ответ

1 голос
/ 19 марта 2019

Я не знаю GSP, но обычно идентификатор не может начинаться с цифры.

"Использование символов, кроме букв ASCII, цифр, '_', '-' и '.' может вызывать проблемы совместимости, так как они не были разрешены в HTML 4. Хотя это ограничение было снято в HTML 5, идентификатор должен начинаться с письмом для совместимости. "

И разве не лучше, если вы используете только метод DOM getElementById () вместо jQuery

ul.append('<li><g:link action="show" controller="author" id="sth_'+document.getElementById('authorID').value+'">+'+document.getElementById('authorID').value+'</g:link></li>')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...