gpt4 book ai didi

jquery - 从Grails自定义标签调用jQuery

转载 作者:行者123 更新时间:2023-12-02 15:30:21 24 4
gpt4 key购买 nike

我正在尝试创建一个包含jQuery代码的自定义标签。
例如,像<i2:myTag id="myId">这样的自定义标签会变成类似以下内容:

<a href="#" id="myId">Click</a>
<script>
$("#myId").click(function(){...})
</script>

那是行不通的,因为当我使用资源插件来加载jQuery库时,在处理脚本代码时,尚未加载jQuery。

我想我可以使用document.ready或window.load强制在适当的时候执行以前的脚本代码,但是,有没有更优雅的方法来实现呢?

例如,一种满足我需要的解决方案是从我的自定义标签中调用资源插件。但是我不知道如何将带有javascript代码的字符串作为主体闭包传递给gsp <r:script>标记:
myTag={attrs,body->
out<<"""<a href="#" id="myId">Click</a>"""

def javascriptCode = """$("#myId").click(function(){...})"""

r.script( ??? ) <--- how to set the javascriptCode as the body closure of the <r:script> tag?
}

任何想法表示赞赏。

谢谢

最佳答案

实际上,仅使用$(document).ready();要简单得多。 feature of jQuery

因此,对于您的示例,只需使其呈现即可:

$(document).ready(function() { $("#myId").click(function(){...}); });

这似乎是最简单的解决方案,因此也是最优雅的解决方案。为什么在过度设计的情况下会增加复杂性呢?抱歉,如果我错过了使用此功能的问题,但我确实确实认为这是最简单的解决方案。

关于jquery - 从Grails自定义标签调用jQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20640700/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com