Grails项目与JQuery没有插件

时间:2012-10-08 11:03:08

标签: jquery grails

我正在尝试设置一个使用JQuery的简单Grails 2.1.1应用程序

我有一个名为“TestController”的Controller和一个位于index.gsp的正确位置。 我手动添加了JQuery库,我没有使用Grails插件。我把“jquery-ui-1.8.24.custom.min.js”和“jquery-1.8.0.min.js”放在web-app / js中(位置是正确的,因为我可以看到Jquery的代码,当我在浏览器中浏览我自己的代码,然后单击参考链接)

我想运行Autocomplete sample of JQuery。代码如下所示:

<!DOCTYPE html>
<html>
<head>

<script src="../js/jquery-ui-1.8.24.custom.min.js" type="javascript"/>
<script src="../js/jquery-1.8.0.min.js" type="javascript"/>


<script>
    $(document).ready(function () {
        var availableTags = [
            "ActionScript",
            "AppleScript",
            "Asp",
            "BASIC",
            "C",
            "C++",
            "Clojure",
            "COBOL",
            "ColdFusion",
            "Erlang",
            "Fortran",
            "Groovy",
            "Haskell",
            "Java",
            "JavaScript",
            "Lisp",
            "Perl",
            "PHP",
            "Python",
            "Ruby",
            "Scala",
            "Scheme"
        ];
        $("#tags").autocomplete({
            source:availableTags
        });
    });
</script>

</head>

<body>


<div class="demo">

<div class="ui-widget">
    <label for="tags">Tags: </label>
    <input id="tags">
</div>

</div><!-- End demo -->

自动填充功能到目前为止无效。我错过了什么?

4 个答案:

答案 0 :(得分:1)

更改对jQuery的引用:

<script src="../js/jquery-1.8.0.min.js" type="text/javascript" ></script>
<script src="../js/jquery-ui-1.8.24.custom.min.js" type="text/javascript" ></script>

至少,在我的电脑上修改了你的例子......: - )

答案 1 :(得分:1)

解决了它。

  • 确保没有安装JQuery插件
  • JQuery以正确的顺序引用

    <script src="../js/jquery-1.8.0.min.js" type="text/javascript"></script>
    <script src="../js/jquery-ui-1.8.24.custom.min.js" type="text/javascript"></script>
    
    <script>
        $(document).ready(function () {
            var availableTags = [
                "ActionScript",
                "AppleScript",
                "Asp",
                "BASIC",
                "C",
                "C++",
                "Clojure",
                "COBOL",
                "ColdFusion",
                "Erlang",
                "Fortran",
                "Groovy",
                "Haskell",
                "Java",
                "JavaScript",
                "Lisp",
                "Perl",
                "PHP",
                "Python",
                "Ruby",
                "Scala",
                "Scheme"
            ];
            $("#tags").autocomplete({
                source:availableTags
            });
        });
    </script>
    

答案 2 :(得分:1)

为什么不使用对资源目录的引用?

<script type="text/javascript" src="${resource(dir:'js',file:'jquery-1.8.0.min.js')}"</script>

<script type="text/javascript" src="${resource(dir:'js',file:'jquery-ui-1.8.24.custom.min.js')}"> </script>

答案 3 :(得分:0)

您遇到Grails的错误,我花了一段时间才发现。 由于某种原因,第一个javascript条目被忽略进行处理。 要解决您的问题,您需要在资源之前添加额外的脚本标记。像这样。

<script type="javascript"/></script>
<script src="../js/jquery-ui-1.8.24.custom.min.js" type="javascript"/>
<script src="../js/jquery-1.8.0.min.js" type="javascript"/>

重新测试后,应该修复它。