【发布时间】:2014-02-21 20:42:17
【问题描述】:
我是 grails 的新手,我正在尝试在填写第一个字段时将另一个文本字段元素插入到表单中。我正在尝试使用 remoteFunction 操作来调用模板,但没有调用模板。如果我将“g:textField”更改为“g:select”选项,我会得到一个下拉框,但不想要下拉框。
我的想法是有一个名称字段,当它被填写时,它应该在第一个字段下方输入另一个名称字段。我不想将多个名称字段硬编码到表单中。
我的看法--
<tr class="prop">
<td valign="top" class="name">
<label for="casStudent_1"><g:message code="casawards.casStudent_1.label" default="Student #1" /></label>
</td>
<td valign="top" class="value ${hasErrors(bean: casawardsInstance, field: 'casStudent_1', 'errors')}">
<g:textArea onchange="${remoteFunction(action: 'create2' controller="casawards",
update: 'casStudent_2',
params: '\'timeName=\' + this.value')}"
name="casStudent_1" valueMessagePrefix="casawards.casStudent_1"
value="${casawardsInstance?.casStudent_1}" />
</td>
</tr>
控制器 --
def _create2 = { render (template:"create2") }
模板(创建2)--
<tr class="prop">
<td valign="top" class="name">
<label id = "casStudent_2" for="casStudent_2"><g:message code="casawards.casStudent_2.label" default="Student #2" /></label>
</td>
<td valign="top" class="value ${hasErrors(bean: casawardsInstance, field: 'casStudent_2', 'errors')}">
<g:textField name="casStudent_2" value="${casawardsInstance?.casStudent_2}" />
</tr>
任何指导将不胜感激。
【问题讨论】:
-
为什么要到服务器上新建一个字段?您可以使用 javascript 轻松操作 DOM。在插入第二个字段之前是否需要任何服务器端处理?
-
我是新手,不知道插入字段的 javascript。可以提供吗?
-
试试这个链接以获得一些帮助stackoverflow.com/q/9630854/74057
标签: javascript jquery ajax grails