gpt4 book ai didi

java - 通过调用AJAX获取JSON实例到jsp

转载 作者:太空宇宙 更新时间:2023-11-04 07:07:23 24 4
gpt4 key购买 nike

我从辅助类中的 bean 获取 JSONOject

内部助手

public JSONObject init() throws Exception{
// initializations codes are here
JSONObject json = JSONObject.fromObject(bean);
return json;
}

然后我需要在加载jsp时通过ajax请求访问jsp中的上面的JSONObject(以分配如下所示的javascript变量)

jsp内部

$(document).ready(function(){
var VAR_JSON = // need to get the JSON through AJAX
});

以前我有一个这样的代码。

<script type="text/javascript">
var VAR_JSON = <%=helper.init()%>
</script>

如何通过 AJAX 实现此目的?

提前致谢..!!

最佳答案

首先,不要再想 JSP。 JSP 是处理请求时在服务器上执行的(一部分)。进而将响应返回给浏览器(通常是网页);您的 JavaScript(以及您的 AJAX 请求)在该网页上的用户浏览器中运行,而不是在您的 JSP 中。

jQuery提供了专门用于通过AJAX请求获取JSON的函数;它叫做 jQuery.getJSON() 。你可以像这样使用它:

<script type="text/javascript">
$(document).ready(function() {
var VAR_JSON;
function yourFunction() {
// do something with VAR_JSON here
}

$.getJSON('yoururl.do', function(response) {
VAR_JSON = response;
yourFunction();
});
});
</script>

需要注意的是,您不能执行 var VAR_JSON = $.getJSON() 因为该函数是异步的,因此不会返回 JSON(它会返回其他内容 - 请参阅上面链接的文档)。相反,您需要提供一个回调函数,该函数将在异步请求返回成功响应时执行,然后设置您的变量并调用另一个使用它的函数。

另请注意,您不需要调用类似 JSON.parse() 的内容,因为 jQuery 会为您执行此操作;您已经告诉它您需要返回 JSON,因此它会解析该字符串以获取结果对象或数组,然后将其作为参数传递给回调函数。

关于java - 通过调用AJAX获取JSON实例到jsp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21157957/

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