从Struts2到AngularJS获取值
Get values from Struts 2 to AngularJS
我的目标是在JSP页面中单击按钮时显示值。控制返回到$http.get("angularAction.action").success(
function(data)
,但控制台中的值显示为null
操作
private LoginModel personData=new LoginModel();
private JSONObject jSONObject;
public String returnDetails(){
System.out.println("in returnDetails");
personData.setFirstName("James");
personData.setLastName("John");
jSONObject=new JSONObject();
jSONObject.put("result",personData);
return SUCCESS;
}
XML
<action name="angularAction" class="com.scrolls.AjsStruts.login.action.LoginAction" method="returnDetails">
<result type="json">
<param name="root">jSONObject</param>
<param name="excludeNullProperties">true</param>
<param name="noCache">true</param>
</result>
</action>
JSP
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta charset="ISO-8859-1">
<title>AjsStruts</title>
<script type="text/javascript" src="./js/angular.min.js"></script>
<script>
var app = angular.module('myApp', []);
function MyController($scope, $http) {
$scope.getDataFromServer = function() {
$http.get("angularAction.action").success(
function(data) {
console.log(data.result);
$scope.person = data.result;
}).error(function(data) {
// called asynchronously if an error occurs
// or server returns response with an error status.
});
};
};
</script>
</head>
<body>
<h1>Get Data</h1>
<div data-ng-app="myApp">
<div data-ng-controller="MyController">
<button data-ng-click="getDataFromServer()">
Fetch data from server
</button>
<p>First Name : {{person.firstName}}</p>
<p>Last Name : {{person.lastName}}</p>
{{person}}
</div>
</div>
</body>
问题存在于三页中,更正后的代码为
操作
public String returnDetails(){
personData.setFirstName("James");
personData.setLastName("John");
return SUCCESS;
}
人员数据的获取者和设置者需要创建
XML
<action name="angularAction" class="com.scrolls.AjsStruts.login.action.LoginAction" method="returnDetails">
<result type="json">
<param name="root">personData</param>
<param name="excludeNullProperties">true</param>
<param name="noCache">true</param>
</result>
</action>
JSP
<script>
var app = angular.module('myApp', []);
function MyController($scope, $http) {
$scope.getDataFromServer = function() {
$http.get("angularAction.action").success(
function(response) {
console.log(response);
$scope.person = response.data;
}).error(function(data, status, headers, config) {
// called asynchronously if an error occurs
// or server returns response with an error status.
});
};
};
</script>
相关文章:
- 如何从输入框中获取angularJS中的值
- 获取angularjs中的URL部分
- 我一直在获取angularjs服务不是函数错误(LoginService.login不是函数)
- 获取AngularJS服务中TextArea的值
- 获取angularjs中输入类型时间的值
- 如何从服务器获取AngularJs中数组中每个元素的数据
- 如何在回调函数中获取 AngularJS 中 $scope 变量的当前状态
- 获取 AngularJS 应用程序以在单击时显示模态
- 在提交以调用 webapi 之前,获取 Angularjs 中变量中的输入值
- 从纯Javascript获取AngularJs Service
- 从基本应用程序获取 angularjs 错误
- 获取AngularJS中的未知对象并对其进行循环
- 获取AngularJs中的文本区域光标位置
- 如何获取angularjs生成的元素的created事件
- 获取AngularJS指令中的template元素
- 获取AngularJS脚本中的HTML元素数据
- 未从$scope模型获取AngularJS指令中的数据
- 如何从选项中获取angularjs的http请求url
- 获取Angularjs变量输出
- 防止浏览器在HTML语法中获取AngularJS属性