gpt4 book ai didi

javascript - 动态更改 View 中的 GSP 模板

转载 作者:太空宇宙 更新时间:2023-11-04 15:39:51 24 4
gpt4 key购买 nike

我想根据选择组件中选择的值刷新模板。

通常,我想在 View 中加载 3 个模板:

  • _templateA.gsp
  • _templateB.gsp
  • _templateC.gsp

在我的 GSP View 中,我有一个包含 3 个选项的选择组件:

  • 一个
  • B
  • C

如何动态更改代码中加载的模板:

<g:render template="*myTemplate*"/>

在select组件的onChange事件上? (如果我选择“A”,则加载 templateA,然后如果我选择“B”,则删除 templateA 并加载 templateB)

最佳答案

在下面的示例中,我们使用序列化将表单内容发布到 /myController/myAction 操作。

然后根据所选选项,我们呈现适当的模板并更新 View 中的 myDiv div。

普惠制:

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
$( document ).ready( function() {
$( '#mySelect' ).on( 'change' , function (event) {
$.ajax({
url: "/myController/myAction",
type: "POST",
data: $( '#myForm' ).serialize(),
success: function ( data ) {
$( '#myDiv' ).html( data );
},
error: function( j, status, eThrown ) { console.log( 'Error ' + eThrown ) }
});
});
});
</script>
</head>
<body>
<g:form name="myForm">
<g:select name="mySelect" from="${['A', 'B', 'C']}" />
</g:form>

<div id="myDiv"></div>
</body>
</html>

Controller :

def myAction() {
render template: "template${params.mySelect}"
}

关于javascript - 动态更改 View 中的 GSP 模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43988575/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com