javascript - 在 jquery 中访问 Spring MVC 模型对象

标签 javascript jquery spring spring-mvc jaxb

这就是我从 Controller 返回模型对象的方式。

model.addObject("gameSchList", gameSchList);
return model;

我得到了 JSON 输出形式的响应,因为我使用了 Spring JAXB 实现。 这是我从 Spring Controller 获得的输出。

{
   "gameSchList":
   [
       {
           "team":
           [
               {
                   "alias": "A",
                   "logo": "A_LOGO"
               },
               {
                   "alias": "B",
                   "logo": "B_LOGO"
               }
           ],
           "cName": "AZ",
           "id": "58",
           "type": "game",
           "channel": "713",
           "time": "Sun 13:00PM",
           "status": "pregame"
       }
   ]

}

现在我想在文档就绪函数中访问这个 gameSchList。这是我添加到主页的外部 js 文件。

现在,在 gameinfo.js 中,我创建了一个现成的函数,并尝试使用以下代码访问 gameSchList。我需要在 js 文件中满足此要求,而不使用 jSTL。

$(document).ready(function(){
    var list = ${gameSchList};
    $.each(list, function( index, value ) {
        alert( index + ": " + value );
    });
});

当我调用这个 Controller 时,它会重定向到我的主页并执行这个特定的 gameinfo.js,但它给了我这个错误:

SyntaxError: missing ; before statement

我尝试了多种方法,但没有运气。

var list = ${model.gameSchList};
var list = "${model.gameSchList}";

最佳答案

这是一种解决方案,您可以尝试。在您的 jsp 中声明以下内容,该内容将在服务器端进行评估(确保其在 jsp 中而不是在外部 js 文件中)。

<script type="text/javascript">
 var responseObject= ${gameSchList};
</script>

现在您可以访问 js 上的responseObject,并且可以在 document.ready 函数中使用它。希望这可以帮助。

关于javascript - 在 jquery 中访问 Spring MVC 模型对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28973620/

相关文章:

javascript - 从 Greasemonkey 到 Servlet 的 Ajax 调用 : response failure

javascript - Material UI - 如何在页面折叠时交换网格元素的左/右垂直位置

JQuery Mobile 更改页面

javascript - $.getJSON 不起作用,但脚本中的 JSON 对象有效

web-services - 如何测试来自 JMeter 的 @DELETE restful 服务调用

java - Bean 在测试期间不使用测试资源

javascript - Shadow DOM——封装JS和CSS文件

Javascript IDE/调试

javascript - 当 centerMode 为 true 且 infinite 为 false 时,Slick.js 删除第一张和最后一张幻灯片上的间隙

java - Spring Flux(或 Java Stream)作为左连接合并