action ajax json数据库,json在action,$.ajax{}中的使用

首先需导入包:ezmorph-1.0.4.jar

Action中的调用的方法:

public void getObject(){

try {

if(cname!=null&& !cname.equals("")){

u=udao.findByName(cname);

JSONObject obj=new JSONObject();

obj.put("house", u.getHouse());//u是一个User对象

actionUtil.sendStringToClient(obj.toString());

}

} catch (Exception e) {

e.printStackTrace();

}

}

Json的封装类:

public class ActionUtil {

/**

* 将指定的字符串发送到客户端

*

* @param content

* @throws Exception

*/

public void sendStringToClient(String content) throws Exception {

HttpServletResponse response = ServletActionContext.getResponse();

response.setContentType("text/html;charset=UTF-8");

response.getWriter().write(content);

}

public void sendSuccessToClient() throws Exception{

this.sendStringToClient("success");

}

/**

* 将List集合转换成对应的Json字符串

* @param list 待转换的List集合

* @return Json字符串

* @throws Exception

*/

public String generJsonStringFromList(List list) throws Exception {

JSONArray array = JSONArray.fromObject(list);

return array.toString();

}

public void sendJsonStringFromList(List list)throws Exception{

this.sendStringToClient(this.generJsonStringFromList(list));

}

}

Struts.xml中的配置:

jsp页面中ajax:

//选择下拉列表中的某一项,其他显示框显示相应信息

function change(){

var obj = document.getElementById("name"); //定位id

var index = obj.selectedIndex; // 选中索引

var text = obj.options[index].text; // 选中文本

$.ajax({

type:'POST',

data:{cname:text},

success:function(data){     var obj=eval("("+data+")");     $("#house").val(obj.house);    }   });

}

jsp页面中的下拉列表

listKey="id" listValue="username"  theme="simple" headerKey="0" headerValue="--------请选择员工-------"

style="margin-bottom:5px;" οnchange="change();" >

若实现级联菜单:

二级菜单用

style="margin-bottom:5px;">二级

$.ajax({

type :"POST",

url : "cate2list.action",

data : {con : text},

//dataType : "json",

success : function(data) {

alert(data);

var obj = eval("(" + data + ")");

alert(obj.list);

//$("#c2").val(obj.list);

var e = document.form1.c2;

for (var i=0; i

},

error : function() {

alert('加载失败!');

}

});

public void getObject() {

try {

if (con != null && !con.equals("")) {

ActionUtil actionUtil = new ActionUtil();

JSONObject obj = new JSONObject();

c2list = c2Dao.findByCate1Id(c1Dao.findByName(con).getId());

List str=new ArrayList();

//将对象数组转换为字符串数组 对象数组obj.put会出错

for(int i=0;i

str.add(c2list.get(0).getName());

}

obj.put("list", str);

actionUtil.sendStringToClient(obj.toString());

}

} catch (Exception e) {

e.printStackTrace();

}

}

AJAX中的dataType(数据格式)-text、json

因为经常使用数据格式,所以将它封装成类,J这样就不会用到时就写了,直接调用写好的类就可以了 (1)dataType数据格式为:TEXT格式的数据是字符串的数据,在"ajax对数据进行删除和查 ...

Ajax中的JSON格式与php传输过程的浅析

在Ajax中的JSON格式与php传输过程中有哪些要注意的小地方呢? 先来看一下简单通用的JSON与php传输数据的代码 HTML文件:

ajax中使用post传值数组array

如果我们在data中想放入array的参数,根据在网上搜索的结果有如下方法,但是没有一个成功的……我还是贴出来,别人成功了,也许是我哪里不对,日后也许还有机会研究..在文章的最后贴出了转化为json的 ...

ajax中加上AntiForgeryToken防止CSRF攻击

经常看到在项目中ajax post数据到服务器不加防伪标记,造成CSRF攻击 在Asp.net Mvc里加入防伪标记很简单在表单中加入Html.AntiForgeryToken()即可. Html.A ...

JSON.stringify实例应用—将对象转换成JSON类型进行AJAX异步传值

在上一篇中,对JSON.stringify()方法有了初步的认识,并且做了一些简单的例子.本篇将进一步将JSON.stringify用在复杂些的实例中,例如如下需求: 在进jQuery AJAX异步传 ...

ajax中网页传输(三)XML——下拉列表显示练习

XML:页面之间传递数据,跨平台传递 HTML:超文本标记语言,核心标签 XML的形势为 &l ...

随机推荐

使用VS Code开发调试ASP.NET Core 1.0

使用VS Code开发调试ASP.NET Core 1.0,微软在今天凌晨发布了.NET Core 1.0,ASP.NET Core 1.0 与 Entity Framewok 1.0. 之前跟大家讲 ...

BZOJ 1116: [POI2008]CLO

1116: [POI2008]CLO Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 922  Solved: 514[Submit][Status][ ...

win10 phpStudy 80端口被占用

原因是win8下系统默认占用80端口,导致apache无法打开.解决方法: 1.以管理员权限运行c:windowssystem32cmd.exe :2.C:WINDOWSsystem32>net ...

jquery中简易tab切换

test

深入浅出Java并发包—CAS机制

在JDK1.5之前.Java主要靠synchronized这个关键字保证同步,已解决多线程下的线程不安全问题,但是这会导致锁的发生,会引发一些个性能问题. 锁主要存在一下问题 (1)在多线程竞争下,加 ...

kindeditor-4.1.10 结合 Asp.Net MVC 添加图片功能

KindEditor是一套开源的HTML可视化编辑器,现在我要结合Asp.Net MVC4 上传图片功能,做相应的配置和修改, 其实网上也有人写过类似的文章了,我写出来是以防以后使用的时候出现这样的问 ...

逻辑回归应用之Kaggle泰坦尼克之灾(转)

正文:14pt 代码:15px 1 初探数据 先看看我们的数据,长什么样吧.在Data下我们train.csv和test.csv两个文件,分别存着官方给的训练和测试数据. import pandas ...

IE 弹出框处理经验

//各屏幕弹出窗样式 // 1366*768var style_1366x768 = "dialogWidth:950px;dialogHeight:650px;help:no;center ...

DB2 VC++ 中连接字符串

根据你安装的驱动,有如下两种连接字符串形式.Provider=DB2OLEDB;Network Transport Library=TCPIP;Network Address=xxx.xxx.xxx. ...

js中this的深入研究

this对象是函数在运行时由调用函数的对象决定的: 1.在全局对象中运行函数时,this等于window 2.当函数被作为某个对象的方法调用时, this等于那个对象. 需要注意的几点: 声明函数里的 ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值