本文介绍了grails链接-将javascript变量添加到params中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
$('#andiebox').append('<g:link controller="search" action="search" params="[where:'+destination+', what:what, sort:sort, type:type, distance:distance]">Psychos in HH</g:link>');
grails不接受此设置,我如何正确插入变量?
this is not accepted by grails, how can i insert the variable correctly?
该变量是从输入端在客户端生成的:
the variable is clientside generared from a input:
var destination = $(this).attr("id"); var metaSection = $("#metaSection").val();推荐答案
<g:link是服务器端标记,因此它只能为链接做基础.所有客户端参数都应在客户端上填写.像这样:
<g:link is server-side tag, so it could only prepare base to your link. All client side parameters should be filled on client side. Something like:
var params = { what: '${what.encodeAsJavaScript()}', //as I understand all this variables are server side variables sort: '${sort.encodeAsJavaScript()}', type: '${type.encodeAsJavaScript()}', distance: '${distance.encodeAsJavaScript()}' }; params.destination = $(this).attr("id"); var urlBase = '${createLink(controller:"search", action: "search").encodeAsJavaScript()}'; $('#andiebox').append('<a href="' + url + '?' + $.serialize(params) + '">Psychos in HH</a>');更多推荐
grails链接
发布评论