0

我想将 GSP 中使用的 URL 参数传递给 jQuery 函数。我找到了一个可行的解决方案,但我的直觉告诉我使用全局 Javascript 变量不是一个好主意。

GSP - 使 Grails 中的 params.id 可用于 Javascript 作为全局变量:

<g:javascript >
    var categoryId = ${params.id}
</g:javascript>

在 jQuery 函数中使用此变量:

<g:javascript src="views/visual.js"/>

Javascript:

// Call with URL using the global variable defined in the GSP
$.getJSON(
    "../visualJson?id=" + categoryId,
    function (data) {
    // Some code.
});

这样做的惯用 Grails 方式是什么?

4

1 回答 1

3

虽然不一定特定于 Grails,但为什么不将变量传递给函数呢?说:

在“views/visual.js”中,你有:

var someFunction = function(categoryId)
{
    // Call with URL using the global variable defined in the GSP
    $.getJSON(
        "../visualJson?id=" + categoryId,
        function (data) {
        // Some code.
    });
}

因此,您可以通过调用someFunction('${params.id}')应用程序中的函数来传递值。

于 2012-06-21T08:44:39.070 回答