angular中采用ajax交互后台servlet问题
2017-05-16 21:20
211 查看
angular中采用ajax交互后台冲突。
前台js代码请求片段
$.ajax({
url:"../servlet/QuestionnireServlet",
type:"post",
async:false,//是否异步
dataType:'json',
data:{"method":"findAllQuestionnires"},
success:function (data){
$scope.questionnires = angular.fromJson(data);
},
error:function (error){
}
});
后台片段
String method = request.getParameter("method");
if(method!=null){
ArrayList<?> dd = questionnireServiceBean.queryAllQuestionnires(Questionnire.class);
if(dd!=null){
String jonString = JSONArray.fromObject(dd).toString();
writer.write(jonString);
}
}
查询的时候,到后台查到了数据,但是在前台$scope.questionnires = angular.fromJson(data);赋值之后,页面采用ng-repeat并没有显示出来。查看$scope里面的$scope.questionnires是大小为查出来的数组大小,并且有值。Table里面始终渲染不出来,后来换了一种方式解决了。
采用了angular的$http请求后台servlet,查出的数据能够进行正常渲染。这也许是angularjs 和 jquery的ajax之间的冲突。
更正后代码
angular.module('questionnireApp',[])
.factory('QestionnireService', ['$resource','$http',function($resource,$http)
{
//var URL = $resource('/questionnairePrj/servlet/QuestionnireServlet', {});
var questionnireService = {};
questionnireService.findAllQuestionnires=function(success,error)//传入的两个方法回掉方法
{
$http({
method : 'post',
url : "/questionnairePrj/servlet/QuestionnireServlet",
params : {"method":"findAllQuestionnires"},
}).success(success).error(error);
};
return questionnireService;
}]);
前台js代码请求片段
$.ajax({
url:"../servlet/QuestionnireServlet",
type:"post",
async:false,//是否异步
dataType:'json',
data:{"method":"findAllQuestionnires"},
success:function (data){
$scope.questionnires = angular.fromJson(data);
},
error:function (error){
}
});
后台片段
String method = request.getParameter("method");
if(method!=null){
ArrayList<?> dd = questionnireServiceBean.queryAllQuestionnires(Questionnire.class);
if(dd!=null){
String jonString = JSONArray.fromObject(dd).toString();
writer.write(jonString);
}
}
查询的时候,到后台查到了数据,但是在前台$scope.questionnires = angular.fromJson(data);赋值之后,页面采用ng-repeat并没有显示出来。查看$scope里面的$scope.questionnires是大小为查出来的数组大小,并且有值。Table里面始终渲染不出来,后来换了一种方式解决了。
采用了angular的$http请求后台servlet,查出的数据能够进行正常渲染。这也许是angularjs 和 jquery的ajax之间的冲突。
更正后代码
angular.module('questionnireApp',[])
.factory('QestionnireService', ['$resource','$http',function($resource,$http)
{
//var URL = $resource('/questionnairePrj/servlet/QuestionnireServlet', {});
var questionnireService = {};
questionnireService.findAllQuestionnires=function(success,error)//传入的两个方法回掉方法
{
$http({
method : 'post',
url : "/questionnairePrj/servlet/QuestionnireServlet",
params : {"method":"findAllQuestionnires"},
}).success(success).error(error);
};
return questionnireService;
}]);
相关文章推荐
- Ajax、servlet、jsp、JSON数据交互以及跳转问题
- 商家后台页面密码修改问题—采用button提交数据,后端servlet一直取不到值
- jquery $.get()、$.ajax()与后台servlet交互方法
- 前后端交互问题总结--JAVA/Servlet + HTML/Jquery/Ajax
- 前台 jsp 与 后台 servlet 的数据交互问题
- java web项目ajax与servlet交互的路径问题
- jQuery ajax get请求编码问题,jQuery ajax简化处理,jQuery ajax与Servlet交互
- sql server 关于表中只增标识问题 C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件) ajaxfileupload插件上传图片功能,用MVC和aspx做后台各写了一个案例 将小写阿拉伯数字转换成大写的汉字, C# WinForm 中英文实现, 国际化实现的简单方法 ASP.NET Core 2 学习笔记(六)ASP.NET Core 2 学习笔记(三)
- 一个完整的采用Jquery的ajax 方法进行前后台交互的案例
- node入门demo-Ajax让前端angularjs/jquery与后台node.js交互,技术支持:mysql+html+angularjs/jquery
- 关于Servlet中前后台交互中文乱码问题的解决
- 新手笔记:easyUI 的ajax方式与servlet交互问题
- jquery+jsp+servlet做$.ajax交互时出现中文乱码(字符集问题)的解决方案
- AJAX如何与后台交互
- AJAX如何与后台交互
- AJAX如何与后台交互
- Ajax中文乱码问题解决方案(servlet)
- Servlet 采用 forward 时,页面出现汉字乱码问题的分析
- AJAX如何与后台交互
- AJAX如何与后台交互