jQuery使用JSON的例子

本文介绍了一个HTML表单如何通过Ajax实现与后端的异步数据交换。具体包括使用jQuery进行DOM元素的选择、获取输入框值并发送POST请求、处理后端返回的JSON数据等过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、在HTML中,有这样一个表单:

<form method="post" name="searchform" id="searchform" method="/sek.go"> 
<input name="query" value="" type="text" id="query" />
 <input type=”submit” value="查询"></input> 
</form> 

 

当然,要想在HTML中使用Js功能,必须在<head/>中加入

<script type="text/javascript"src="/style/js/ajax.js"></script>

 

2、然后在ajax.js文件中加入如下代码

function userSearch(){   
var query = $("#searchform input[@name='query']").val();    
 $.post("/userSearch.htm", { 
query: query 
} ,function callback(json){  
 var userlist = $.parseJSON(json);   userList(userlist);   
});    
}  

 

解释如下:

1)、"#searchform input[@name='query']";的意思是: 选择id为searchform其下的(name属性值为’query’的)input标签

2)、$(“”).val()意为要得到(“”)所选中属性的值;

3)、在$.post()中,第一项参数是指定目标servlet,即要把本post请求发给的那个servlet。

第二项是本post请求所携带的数据;“:”前的为key或者name,后为value;

第三项是回调函数,其内若有形参,则表示要对从servlet返回的值进行处理,这里的callback的功能是将JSON对象json转换成了JS对象userlist,然后将JS对象传入函数userList

3、post请求携带了名为query的参数去了后台,在servlet中进行处理:

 

//从名为"query"能的参数中取出post带过来的数据 
 String query = request.getParameter("query");  
if (query != null && !query.isEmpty()  && !query.trim().equalsIgnoreCase("")) {  
//如果"query"的值不为空,就用'query'为参数构建HQL语句  
String hql = "from TUser as user where user.userName like '"+ query + "%'";  
//到库表TUser中进行查询,并得到一个表结构  
List list = weilav3TUserDAO.getListByHQL(hql); 
 if (list != null && !list.isEmpty()) {  
//若list不为空,则将其转换成JSON对象,并存入jsonArray中  
JSONArray jsonArray = JSONArray.fromObject(list);  
 //下面就是把存有查询结果的JSON对象返给页面  
response.setContentType("text/html;charset=utf-8");  
PrintWriter out = response.getWriter(); 
 out.println(jsonArray);  ……  
}else {……} 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值