当前位置: 首页 > 面试题库 >

在grails中从gsp页面进行ajax调用

刘令
2023-03-14
问题内容

我是ajax的新手。我试图将请求从我的gsp页面发送到控制器操作。但是我失败了。它没有调用控制器操作,并且页面正在重新加载。任何人都可以看看这个并提供帮助。这是我的以下页面>>>

    <%@ page contentType="text/html;charset=UTF-8" %>
<html>
<head>
  <title>Ajax First Example</title>
    <g:javascript plugin="jquery" library="jquery" src="jquery/jquery-1.7.2.js"/>
    <script>
        function callAjax(){
            $.ajax({
                url: "returnMe",
                type:"post",
                dataType: 'json',
//            data:{ids:JSON.stringify(idList), option:option, id:id}
                success: function() {
                    alert(1)
                }
            });
        }
    </script>
</head>
<body>
<form name='myForm'>
    <input type="submit" value="Call Ajax Function" onclick="callAjax()">
</form>
</body>
</html>

这是我的控制器动作>>>

def returnMe = {
    String msg = 'sdfsdf'
    render msg as JSON
}

问题答案:

您可以尝试以下方法:

onclick="callAjax() return false;">

或这一个:

function callAjax(e){ //<-------pass the event
        e.preventDefault(); // <-----add this to prevent the default behavior
        $.ajax({
           .....
        });
}

根据要求完成ajax调用:

function callAjax(){
        $.ajax({
            url: "returnMe",
            type:"post",
            dataType: 'json',
//          data:{ids:JSON.stringify(idList), option:option, id:id}
            success: function(data) {
                console.log(data); //<-----this logs the data in browser's console
            },
            error: function(xhr){
                alert(xhr.responseText); //<----when no data alert the err msg
            }
        });
    }


 类似资料:
  • 我正在寻找如何组织grails GSP以及如何管理GSP扩展的最佳实践。我正在开发一个应用程序,我需要创建自己的GSP超文本标记语言元素以及覆盖标准GSP元素,我想知道如何组织它们。 我考虑的是编写一个Grails插件,它有自己的标记库和自己的命名空间。创建我需要的所有元素,并覆盖现有元素。 关于如何组织这样的事情,有什么好的例子吗?

  • 给出以下发出ajax调用的jQuery代码: 我遇到的问题是,用户可以在URL上手动输入test.html并在屏幕上看到响应。如何避免这种情况?

  • 我是grails和groovy的新手。我正在尝试找出如何在相同的gsp中从grails控制器中的操作中呈现响应-但在gsp的不同部分-作为接受请求的gsp(在这种情况下是Web表单gsp页面)? 欢迎任何链接或turorials或直接回复“do this”。 这是我正在使用的代码。这是一个Grails应用程序,我在其中使用了一个引导模板(当然可以在互联网上免费获得)。 现在,功能的实际代码本身起作

  • 问题内容: 这是我的ajax电话: 在我的控制器中,最后有一个重定向指令: 它不会重定向。取而代之的是,它停留在与开始时相同的加载页面上。 问题答案: 如果AJAX调用返回重定向,浏览器将不会重定向。如果您想在AJAX调用后将用户发送到新页面,则需要使用Javascript进行操作。例: 确保浏览器呈现AJAX响应。使用grails 标签,您应该指定一个元素以使用该属性进行更新。

  • 我需要在包含字符序列${}(OpenLayers样式-属性替换语法)的GSP中编写一些javascript。不幸的是,这也是groovy gstring表达式的语法。如何对其进行转义,使Grails不会将字符序列解释为gstring。我已经试过了,但没有成功。

  • 当我将grails(2.4.0)项目war部署到weblogic 12.1.2中时,我面临一个问题。当部署到tomcat中时,战争效果非常好。问题是,当战争部署在weblogic中时。一旦用户登录,使用LDAP的身份验证过程也可以正常工作。接下来,应该使用GSP页面呈现主页,但weblogic似乎无法呈现GSP页面。它正在浏览器上运行404。 一旦我登录到应用程序,如果我直接使用浏览器中的任何UR