我是新手。我正在使用 renderJSON 生成 JSON 数据。我如何在我看来访问这些数据。我尝试渲染(“ View ”,jsonobject)。当我尝试在 jquery 脚本中访问这个对象时,这里没有接收到任何数据。
我尝试使用 ajax 调用。以下方法在我的 Controller 中
public static void getJSONWords(){
.......
render(jsonObject);
}
public static void wordcloud(){
render();
}
我的 View “wordcloud.html”制作了一个ajax
$.ajax({
url: "/getJSONWords",
dataType : 'json',
success: function (data) {
.......
});
但我没有获得任何用于 ajax 调用的数据。我尝试使用 Firfox 调试器,检查日志文件 ajax 调用是否正在调用相应的 Controller 操作。感谢您的帮助
最佳答案
renderJSON
直接将 JSON 返回给浏览器,不经过 View 处理。
如果你想访问 View 中的 jsonObject,那么你可以这样做
render(jsonObject);
这会将 json 对象传递到您的 View ,并使其可用作 jsonObject
。因此,在您看来,您可以做类似的事情。
<script>
var data = ${jsonObject.raw()};
$(document).ready(function() {
// process your JSON once the rest of the document is rendered
});
</script>
请注意,我使用 raw()
来防止特殊字符被转义。
UDPATE:根据您的更新提供更多信息...您的 AJAX 调用中的路线似乎不正确。它应该看起来像...
$.ajax({
url: "@{Application.getJSONWords}",
dataType : 'json',
success: function (data) {
.......
});
关于jquery - 在 View 中渲染 JSON 数据 - play 框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12545595/