Javascript 如何在grails中将部分模板加载到div中
我是grails新手,无法找到解决方案 每当单击CreateClient时,我都希望用部分模板_Client.gsp的内容填充主内容div 我有下面的gsp页面admin.gspJavascript 如何在grails中将部分模板加载到div中,javascript,jquery,grails,Javascript,Jquery,Grails,我是grails新手,无法找到解决方案 每当单击CreateClient时,我都希望用部分模板_Client.gsp的内容填充主内容div 我有下面的gsp页面admin.gsp <!DOCTYPE html> <html> <head> <title>Admin Create</title> <meta name="layout" content="main"/> </head> <b
<!DOCTYPE html>
<html>
<head>
<title>Admin Create</title>
<meta name="layout" content="main"/>
</head>
<body>
<aside class="sidebar span3">
<ul class="nav nav-list">
<li class="nav-header">Admin Console</li>
<li class="create-client"><a href="#">Create Client</a></li>
<li><a href="#">Library</a></li>
</ul>
</aside>
<div class="main-content span7">
</div>
<g:javascript src="admin.js"/>
</body>
</html>
首先,创建一个控制器,为AJAX调用提供模板内容:
class AdminController {
def client() {
render template: 'client',
model: [...],
contentType: 'text/plain'
}
}
这会将\u client.gsp
的内容呈现为字符串,并以文本/普通内容类型返回它。在javascript中,使用load
调用此函数:
$('.main-content').load('/myapp/admin/client');
谢谢你,这正是我需要的。不过,我现在被另一个问题困住了。如果有错误,我将如何处理重定向回这个部分加载的视图?请看下面的答案:我错过了它。如果我在部分中提交表单,但表单无效(在控制器中保存失败),如何重新呈现加载了部分及其错误的页面。我认为这将是更多的javascript工作。我在grails中找不到任何允许我这样做的东西
class AdminController {
def client() {
render template: 'client',
model: [...],
contentType: 'text/plain'
}
}
$('.main-content').load('/myapp/admin/client');