GRAILS:如何解析.gsp文件?

时间:2015-12-22 08:35:27

标签: grails gsp

我找到了一个看起来像这样的代码片段

createReportProfile = function () {

var url = "<%= createLink(controller: 'configCashFlowReport', action: 'saveCreate')%>";
var data = $("form[id=addReportConfigForm]").serializeArray();
var doneFunction = function (data) {
    $("#returnAddReportProfiletDiv").html(data);
}

ajaxGet(url, data, doneFunction, undefined);

return false; }

请注意这一行

var url = "<%= createLink(controller: 'configCashFlowReport', action: 'saveCreate')%>";

CreateReportProfile函数位于脚本标记内,并保存在report.gsp中。显然,代码是使用javascript编写的,但其中有一个grails代码(createLink)。

1)Grails如何检测到它应该评估createLInk标签?因为<%= %> ??但它在双引号内。 grails如何区分简单的字符串和应该评估的字符串?

2)如何解析.gsp文件?

1 个答案:

答案 0 :(得分:3)

为什么你认为这样的代码难以解析?对于GSP而言,它具有什么内容,html,js或css或其他任何内容并不重要。所有这些都是文字。除了GSP标签/块本身之外,没有与之相关的语义。这些块之外的所有其他内容都按原样传递。

您可以使用<g:createLink />语法,或${createLink}。我认为<%= createLink %>之所以被使用只是因为它更容易在Javascript代码中阅读,并且大多数IDE会在没有任何额外工作的情况下正确地突出显示它。