我有这个<g:formRemote>
有这个属性,
<g:formRemote name="innerForm" id="innerForm"
url="[controller:'user', action:'actionAJAX']"
update="formMessage">
<div id="formMessage">Fill up the fields</div>
<g:render template="form" bean="${newUser}" />
<div class="buttons">
<g:submitButton name="Create User"/>
<input type="reset" value="Cancel"/>
</div>
</g:formRemote>
在提交过程中,它会进入具有这行代码的闭包,
def actionAJAX() {
def userInstance = new User(params)
render(template:"error", bean:userInstance)
}
_error.gsp
将包含违反域约束(可为空、空白等)的 bean 错误的脚手架显示。它看起来像这样:
<g:hasErrors bean="${userInstance}">
<ul class="errors" role="alert">
<g:eachError bean="${userInstance}" var="error">
<li <g:if test="${error in org.springframework.validation.FieldError}">data-field-id="${error.field}"</g:if>><g:message error="${error}"/></li>
</g:eachError>
</ul>
</g:hasErrors>
message
问题是我无法def userInstance = new User
在_error.gsp
. 该场景只是留下所有字段_form.gsp
(具有的内容generate-view
并删除所有属性),但在required
提交时,闭包仅返回预期显示违反域约束的域的所有错误。message
<div id="formMessage">