我很陌生Grails
,我正在尝试了解 AJAX 在 Grails 中的工作原理。为此,我尝试从此处修改乘法 AJAX 示例,以便我的应用程序在页面上显示带有 AJAX 的输入字符串。(为了澄清这一点:用户输入例如“foo”,页面应在搜索字段下显示“foo”)
到目前为止,这是我的代码:
我的index.gsp
模板包含一个输入表单,并应显示在表单中键入的字符串:
<!doctype html>
<html>
<head>
</head>
<body>
<div id="search">
<g:render template="searchForm"/>
</div>
<div id="results">
<g:render template="searchResultForm"/>
</div>
</body>
</html>
我的_searchForm.gsp
模板包括搜索表单:
<g:form>
<label for="suchen"></label><g:textField name="suchen"/>
<g:submitToRemote url="[controller:'search', action:'search']" update="results" value="Suchen"/>
</g:form>
我的_searchResultForm.gsp
模板将显示所有结果(在我的情况下只是搜索字符串)
${results}
我的SearchController
which 将获取搜索字符串并返回相同的字符串:
class SearchController {
...
def search(String s) {
return s
}
}
我的问题是,在我在输入表单中写入内容并按下发送按钮后,什么也没有发生。没有错误,但它也不会在输入表单下显示输入字符串。
您可能想知道我为什么要尝试使用 AJAX 来执行此操作:我的目的是实现 AJAX 搜索。当 AJAX 部分工作时,将搜索逻辑添加到控制器应该不是问题。