【发布时间】:2014-12-18 10:14:41
【问题描述】:
让我说出我被卡住的场景,我会尽量简单地解释而不是告诉实际情况。
1st:我在第 1 页。那里很少有具有唯一名称的主题。 第二:我将单击一个主题,它将在后端调用一个 struts2 动作(我们称之为 ActionA),并将唯一的主题名称作为请求参数(请求类型 = GET)。 3rd:Action A 只会重定向到“Tutorial page”。 4th : 在加载时,它将对另一个 Struts2 动作(我们称之为 ActionB)进行 AJAX 调用,这将返回包含该主题的教程的 JSON。
问题: 因为我首先调用 ActionA 并传递只是将页面重定向到其他页面的主题名称。在页面加载时,我正在调用另一个操作来获取 JSON。我无法在返回 JSON 的 ActionB 处获取请求参数值。
注意:我使用的是 Struts2-JSON 插件,所以不需要两个操作,一个用于重定向页面,另一个用于在页面加载时获取 JSON。
尝试的解决方案:我尝试获取请求参数值即主题名称,在教程页面中放置了一个隐藏字段。但无法从 Angular JS 控制器内部获取值。
【问题讨论】:
-
你在用路由器吗? ngRoute/uiRouter?
-
不,我是 Angular JS 的新手,这个 ngRoute 可以在这种情况下帮助我吗??
-
我不熟悉 struts,因此我无法正确理解场景。你在后端渲染你的html吗?通常你使用 ngRoute/uiRouter 切换页面,这些模块有一个“resolve”方法,你可以在渲染之前加载页面需要的任何数据。
-
哦,我误读了您的问题,如果问题是您没有 ActionB 的请求参数,因为您已经加载了一个新页面,请尝试使用存储您需要的所有变量的服务多个地方并在您的控制器中注入此服务。如果这是您需要的,请告诉我,我将添加示例代码。
-
是的,这听起来不错,我可以在页面上找到一些可用的东西,然后我的问题就可以解决了,如果你能举个例子就好了。
标签: ajax json angularjs struts2