javascript - jQuery 未在我的 Groovy 服务器页面中执行

标签 javascript jquery ajax grails

我有一个 jQuery 函数未在我的 Groovy 服务器页面中执行。我的 Controller 的功能只是渲染一条错误消息,但它显示在“下一个”网页上,而不是像 Ajax 中那样显示在“同一”网页上。我确实使用 Chrome 浏览器的“查看源代码”功能验证了 jQuery 确实加载到我的 Controller 的 GSP View 上。

这是我的 Controller 关于我希望显示的错误消息的功能:

def displayerror = {
    render "Login or Password incorrect!"
}

这是我的 GSP 的 head 元素中的内容:

<g:javascript library="jquery" />
<r:layoutResources/>

我了解到layoutResources 行是必要的,否则我的GSP 甚至不支持jQuery。

最后,这是我的 GSP 正文中与此问题相关的内容:

<g:link action = "displayerror" elementId = "errorMessage">Error!</g:link>
    <div id = "time">
    </div>
    <r:script>
        $("#errorMessage").click(function() {
            (#"time").load(this.href);
            return false;
        });
    </r:script>

这只是我创建的一个链接,用于测试在将 Ajax 用于我真正需要的用途之前是否可以正常工作。

非常感谢任何帮助。哦,在我忘记之前,我的 BuildConfig.groovy 中有这一行:

runtime ":jquery:1.11.0.2"

谢谢

最佳答案

另一种方法(也许是一种简单的方法)是使用 grails gsp 标记。使用这个,你可以摆脱 javascript 函数,这样你就可以删除标签之间的所有内容或将其注释掉,只是为了看看事情是如何工作的,并执行如下操作:

 <g:remoteLink controller = "controller" action = "displayerror" update = "time">Error!</g:remoteLink>
    <div id = "time">
    </div>
<%-- Below this line is your old code that is commented out -->
<%--        <r:script>--%>
<%--            $(function () {--%>
<%--                $("#errorMessage").click(function(e) {--%>
<%--                    e.preventDefault();--%>
<%--                    $("#time").load(this.href);--%>
<%--                    });--%>
<%--            });--%>
<%--        </r:script>--%>

将上述代码中的“ Controller ”替换为您相关 Controller 的名称。

关于javascript - jQuery 未在我的 Groovy 服务器页面中执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23656483/

相关文章:

java - 如何在Jquery中将servlet发送的arraylist数据解析为JSON

javascript - Php ajax 具有多个答案的投票系统

javascript - DocumentFragments 的宽度和高度

javascript - 在关联数组javascript中添加键值

jquery - 如何使用拖动功能干净地调整 iFrame 的大小?

javascript - 让 Jquery 记住 attr() 和数据

javascript - 使用 Ajax 将信息发送到 PHP 脚本

javascript - 不确定为什么方法会吐出它吐出的东西

javascript - MVC : How can I make sure that my field have the value selected inside my view on the edit form?

php - 在 Laravel 中将 JSON 错误消息作为 "error"对象返回