您的位置:首页 > 编程语言 > Java开发

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);

}

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐