struts2+ajax 解析返回的json数据 并赋值给select标签
2013-05-22 16:48
507 查看
1.首先是struts2的配置文件
2.action类
3.解析返回的json
//核心对象变量
var xmlHttp;
//区分浏览器创建XMLHttpRequest核心对象
function create(){
if(window.XMLHttpRequset){
xmlHttp = new XMLHttpRequest();
}else if(window.ActiveXObject){
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}
//ajax核心执行方法(此处为提交到servlet处理后,返回纯文本)
function run(){
create();
var id = document.getElementById("zznews.zzcompany.companyId").value;
if(id == null || id == ""){
return ;
}
var URL = "ajax_getNewsTypeInfo.shtml?company.companyId="+id;
xmlHttp.open("POST",URL,true);
xmlHttp.onreadystatechange=callback;
xmlHttp.send(null);
}
//回调函数
function callback(){
if(xmlHttp.readyState == 4){
if(xmlHttp.status == 200){
var v = xmlHttp.responseText;//[{"typeId":1,"typeTitle":"新闻类型1"},{"typeId":2,"typeTitle":"新闻类型2"}];//
//返回的是json 要转换成可操作的字符串
var newsType = eval(eval('(' + v + ')'));
// alert(newsType+"--"+typeof(newsType));
//alert(newsType[0].typeId);
var oSelect = document.getElementById("typeId");
oSelect.options.length = 0;//每次先清空select旧的选项
oSelect.options.add(new Option("<<----------请选择----------->>","") );
for(var i=0; i < newsType.length; i++) {
var option=new Option(newsType[i].typeTitle,newsType[i].typeId);
oSelect.options.add(option);
}
}
}
}
2.action类
3.解析返回的json
//核心对象变量
var xmlHttp;
//区分浏览器创建XMLHttpRequest核心对象
function create(){
if(window.XMLHttpRequset){
xmlHttp = new XMLHttpRequest();
}else if(window.ActiveXObject){
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}
//ajax核心执行方法(此处为提交到servlet处理后,返回纯文本)
function run(){
create();
var id = document.getElementById("zznews.zzcompany.companyId").value;
if(id == null || id == ""){
return ;
}
var URL = "ajax_getNewsTypeInfo.shtml?company.companyId="+id;
xmlHttp.open("POST",URL,true);
xmlHttp.onreadystatechange=callback;
xmlHttp.send(null);
}
//回调函数
function callback(){
if(xmlHttp.readyState == 4){
if(xmlHttp.status == 200){
var v = xmlHttp.responseText;//[{"typeId":1,"typeTitle":"新闻类型1"},{"typeId":2,"typeTitle":"新闻类型2"}];//
//返回的是json 要转换成可操作的字符串
var newsType = eval(eval('(' + v + ')'));
// alert(newsType+"--"+typeof(newsType));
//alert(newsType[0].typeId);
var oSelect = document.getElementById("typeId");
oSelect.options.length = 0;//每次先清空select旧的选项
oSelect.options.add(new Option("<<----------请选择----------->>","") );
for(var i=0; i < newsType.length; i++) {
var option=new Option(newsType[i].typeTitle,newsType[i].typeId);
oSelect.options.add(option);
}
}
}
}
相关文章推荐
- php ajax从后台返回json数据,并把数据赋值给自动生成HTML标签
- [置顶] php jQuery把后台返回的json数据赋值给页面标签
- C#返回Json,js解析Json,并添加到select标签中
- Jquery 局部刷新及 表单取值赋值 处理返回json数据 一些基本操作
- 调用远程方法,返回json数据,并解析
- Ajax获取php返回json数据动态生成select下拉框的实例
- 【js与jquery】jquery对返回json格式数据的处理和解析
- 玩转Web之Json(三)-----easy ui怎么把前台显示的dataGird中的所有数据序列化为json,返回到后台并解析
- 【Javascript】解析不规则的JSON返回数据集合!Javascript
- javascript 解析ajax返回的xml和json格式的数据
- struts2 + ajax(由前台的form提交数据到后台,再根据form所调用返回获取的后台json格式的数据返回到前端,然后前端用jquery对json数据进行解析)==》》涉及非文件上传的部分
- $.getjson遇到的几个问题-json返回数据中带有html标签的输出
- Jquery 局部刷新及 表单取值赋值 处理返回json数据
- Android 解析后台返回为Json数据的简单例子!!!
- 安卓使用Gson解析服务器返回Json数组,以及java服务器怎样返回list集合的Json数据(原创)
- spring boot新手教程之使用FastJson解析JSON数据以及解决返回中文乱码问题
- javascript解析从服务器返回的json格式数据
- Android下网络请求数据,返回数据显示不全,解析json no value for xxx
- ajax返回json数据,对其中日期的解析
- Jquery ajax方法解析返回的json数据