【问题标题】:How to use g:message from Javascript如何在 Javascript 中使用 g:message
【发布时间】:2023-04-03 12:45:01
【问题描述】:

有些消息从 Javascript 文件发送到 GSP 页面。如何在 Javascript 页面中实现 g:message?

例如:

if ($('#name').val() == "") {
    $('#nameStatus').show();
    $('#nameStatus').html('<font color=red>Company Name can not be blank</font>');
    return false;

【问题讨论】:

    标签: javascript grails internationalization


    【解决方案1】:

    试试这种语法:

    function foo() {
        return "${message(code:'my.message.code')}";
    }
    

    【讨论】:

    • 如果您的 javascript 在您的 GSP 文件中,这将起作用,但如果您包含 .js 文件,它将无法正常工作
    • @omarello 根据以下来源,可以从控制器渲染 .js 文件:gist.github.com/sergiomichels/6063861
    【解决方案2】:

    如果我理解正确,您希望能够在您的 javascript 中使用 g:message 的输出。

    有一篇非常有用的博客文章讨论了如何以您想要的类似方式使用 g:createLink,因此您可以轻松地将其调整为使用 g:message。查看post here,cmets 中也有一些有用的信息。

    这个想法是在您的 GSP 文件中创建 javascript 对象;应该在包含您的 javascript 文件之前定义它;然后在你的 js 代码中访问那些全局对象。

    编辑:

    您可能还对GSParse Plugin 感兴趣。我自己没有尝试过,但我认为它也能满足您的需求。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-15
      • 2016-12-26
      • 2012-09-21
      • 2021-05-12
      • 2015-10-10
      • 2021-03-01
      相关资源
      最近更新 更多