在Struts应用下一个完整的json例子
2010-10-12 09:05
239 查看
1、前台js代码(使用prototype链接ajax)
function displayItem(code)
{
var url = "ajax/findItems.action?code="+code;
var myAjax = new Ajax.Request(
url,
{
method: 'get', // 使用GET方式发送HTTP请求
onComplete: callbackOp // 指定请求成功完成时需要执行的方法
}
);
}
function callbackOp(response)
{
var object=eval('('+response.responseText+')'); //得到服务器返回的值
var leftContent = object.leftMembers;
var leftSelect = document.getElementById("left");
leftSelect.options.length = 0;
for(i = 0;i<leftContent.length;i++){
var per=leftContent[i].split("_");
leftSelect[i] = new Option(per[1],per[0]);
}
}
}
2、struts.xml配置文件中
<package name="ajax" namespace="" extends="json-default">
<action name="*" class="" method="{1}">
<result type="json"></result>
</action>
</package>
3、action中代码(要导入struts2-json-plugin-2.1.8.1.jar包,我的Struts版本是2.1.8)
import org.apache.struts2.json.annotations.JSON;
public Class ajaxAction extends ActionSupport{
private PracticeService ps;
private List<String> leftMembers;
public String execute(){
leftMembers = ps.findItem(code, 1);
return "success"
}
@JSON(name="leftMembers")
public void setLeftMembers(List<String> leftMembers) {
this.leftMembers = leftMembers;
}
public List<String> getLeftMembers() {
return leftMembers;
}
public void setPs(PracticeService ps) {
this.ps = ps;
}
}
如果页面的js文件中的responseText里的内容出现html网页的内容可以将getMembers方法去掉试下看,本人就是这么干的
4、在service中有个方法将得到一个List<String>的串在这里我是只将要在web页面显示的东西拼起来的,如我在页面只要member的code和name属性里的值(member 是自己定义的一个model),那我中间便用"_"隔开,以便在js中取值
for(Member single : list){
StringBuffer temp = new StringBuffer();
temp.append(String.valueOf(single.getCode()));
temp.append("_");
temp.append(single.getName());
members.add(temp.toString());
}
如有更好的方法,望指教!!
function displayItem(code)
{
var url = "ajax/findItems.action?code="+code;
var myAjax = new Ajax.Request(
url,
{
method: 'get', // 使用GET方式发送HTTP请求
onComplete: callbackOp // 指定请求成功完成时需要执行的方法
}
);
}
function callbackOp(response)
{
var object=eval('('+response.responseText+')'); //得到服务器返回的值
var leftContent = object.leftMembers;
var leftSelect = document.getElementById("left");
leftSelect.options.length = 0;
for(i = 0;i<leftContent.length;i++){
var per=leftContent[i].split("_");
leftSelect[i] = new Option(per[1],per[0]);
}
}
}
2、struts.xml配置文件中
<package name="ajax" namespace="" extends="json-default">
<action name="*" class="" method="{1}">
<result type="json"></result>
</action>
</package>
3、action中代码(要导入struts2-json-plugin-2.1.8.1.jar包,我的Struts版本是2.1.8)
import org.apache.struts2.json.annotations.JSON;
public Class ajaxAction extends ActionSupport{
private PracticeService ps;
private List<String> leftMembers;
public String execute(){
leftMembers = ps.findItem(code, 1);
return "success"
}
@JSON(name="leftMembers")
public void setLeftMembers(List<String> leftMembers) {
this.leftMembers = leftMembers;
}
public List<String> getLeftMembers() {
return leftMembers;
}
public void setPs(PracticeService ps) {
this.ps = ps;
}
}
如果页面的js文件中的responseText里的内容出现html网页的内容可以将getMembers方法去掉试下看,本人就是这么干的
4、在service中有个方法将得到一个List<String>的串在这里我是只将要在web页面显示的东西拼起来的,如我在页面只要member的code和name属性里的值(member 是自己定义的一个model),那我中间便用"_"隔开,以便在js中取值
for(Member single : list){
StringBuffer temp = new StringBuffer();
temp.append(String.valueOf(single.getCode()));
temp.append("_");
temp.append(single.getName());
members.add(temp.toString());
}
如有更好的方法,望指教!!
相关文章推荐
- Struts2+Ibatis+Spring.30(完整例子,含3.0事务配置,OSCache缓存配置,JreeChart配置,log4j日志输出Sql,对一个表实现完整的查询,批量删除,添加,更新)
- Struts中应用Struts-menu的简单例子
- Struts 国际化的一个完整例子(转)
- protobuf的简单应用,json和protocol Buffer的转换简单例子
- AgileEAS.NET SOA 中间件平台.Net Socket通信框架-完整应用例子-在线聊天室系统-代码解析
- mybatis学习-入门(4)-一个完整的web例子,通过json将字符串传递给前台,然后显示出来
- Jbpm4.4+hibernate3.5.4+spring3.0.4+struts2.1.8整合例子(附完整的请假流程例子,jbpm基础,常见问题解决)
- JQUERY+JSON+Struts 1.3例子
- boost生成和解析json的完整例子
- AgileEAS.NET SOA 中间件平台.Net Socket通信框架-完整应用例子-在线聊天室系统-下载配置
- Struts+Jquery+Ajax+Json应用实例
- Struts中应用Struts-menu的简单例子
- Java中JSON格式的简单应用例子
- JSON例子应用
- Struts1.1完整实战开发例子
- Jbpm4.4+hibernate3.5.4+spring3.0.4+struts2.1.8整合例子(附完整的请假流程例子,jbpm基础,常见问题解决)
- Jbpm4.4+hibernate3.5.4+spring3.0.4+struts2.1.8整合例子(附完整的请假流程例子,jbpm基础,常见问题解决)
- JSON例子(struts ajax json)
- ListView 关于Adapter 本地文件中解析json数据完整例子
- 关于在struts2.0中应用json产生类型访问异常问题的解决