当我尝试在grails <g:link>
标记中使用jQuery语句时,我遇到了多编译错误
var ul = $("#authorList > ul");
ul.append('<li><g:link action="show" controller="author" id="'+$('#authorID').val()+'">+'+$('#authorField').val()+'</g:link></li>')
我只是在id =“”属性中使用jquery获取错误
ul.append('<li><g:link action="show" controller="author" id="">+'+$('#authorField').val()+'</g:link></li>')
该页面正在运行,但我无法获得动态链接,它是如何正确的语法?
URI:/ ComplexTables / book / create Class org.codehaus.groovy.control.MultipleCompilationErrorsException 消息:启动失败:19:美元符号后的非法字符串正文字符;解决方案:要么转义文字美元符号“\ $ 5”,要么将值表达式“$ {5}”@第19行,第210列括起来.l()\'“',35,it){return”'+ $(' #authorI ^ 1错误
在grails-app \ views \ book_form.gsp的第35行附近
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>
我不知道GSP,但一般ID不能以数字开头。
“使用除ASCII字母,数字,'_',' - '和'。'之外的字符。可能会导致兼容性问题,因为HTML 4中不允许这样做。虽然HTML 5中已经解除了这个限制,但ID应该以兼容字母开头。“
如果你只使用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>')