我已经在谷歌上搜索了很长时间,但找不到解决这个问题的方法。我试图从我的 Groovy Controller 中的 GSP 文件访问一个 JavaScript 变量,但我找不到如何执行此操作。
例子:
//JavaScript stuff
<script>
function validateForm(){
var ret = false
}
</script>
//Groovy controller stuff
def myAction = {
println params.ret
}
我如何实现类似的目标?
最佳答案
将变量传递给 Controller 的两种方法:
- > Ajax
- 表单提交
Ajax
使用
remoteFunction
${remoteFunction(controller: 'actionsController' , action: 'implementNewPixel', params: '\'ret=\' + ret')}
使用 Ajax
var ret = false; jQuery.ajax({ url: "${createLink(controller: 'actionsController', action: 'implementNewPixel')}", data: "ret=" + ret, success: function (data) { alert(data); } });
等等
表单提交
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script>
var ret;
function validateForm(){
ret = false;
}
jQuery(function () {
jQuery("[name='jftForm']").submit(function () {
jQuery("[name='ret']").val(ret);
});
});
</script>
<g:form name="jftForm" controller="actionsController" action="implementNewPixel">
...
<g:hiddenField name="ret" value=""/>
<g:submitButton name="submit" value="Submit"/>
</g:form>
关于javascript - 如何将 JavaScript 变量传递给 Groovy Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18093278/