0

我有这个设置,但验证不起作用

索引.gsp:

<g:form  name="loginForm" autocomplete="off" controller="company"  action ="save">

<table >

  <tr>

    <td><g:field type="text" name="company" required="true" value="${c?.companyName}" /></td>

  </tr>
</table>

控制器:

def index = { 
def c  =new Company()

//c=params
return [c:c]

}
def save ={}
4

1 回答 1

0

hasErrors您需要使用表单中的方法检查错误:

<div class="fieldcontain ${hasErrors(bean: yourBean, field: 'yourField', 'error')} required">
    <label for="yourField">
        <g:message code="yourBean.yourField.label" default="yourField" />
        <span class="required-indicator">*</span>
    </label>
    <g:textField name="content" required="" value="${yourBean?.yourField}"/>
</div>

Grails hasErrors文档。

如果验证已通过,请检查您的控制器(保存操作):

    if (!yourBean.save(flush: true)) {
        render(view: "create", model: [yourBean: yourBean])
        return
    }
于 2012-12-09T14:42:51.680 回答