博客首页 注册 建议与交流 排行榜 加入友情链接
推荐 投诉 搜索: 帮助

志愈鸿鹄,行若赤金

gjj.cublog.cn
有关jQuery和JSON的例子

今天搞定了一个有关jQuery和JSON的例子,很艰难,所以先记下来,免得时间长了忘。

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']";的意思是: 选择idsearchform其下的(name属性值为’query’)input标签

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

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

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

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

 

3post请求携带了名为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 {……}

发表于: 2007-05-19,修改于: 2007-05-19 16:43,已浏览4336次,有评论7条 推荐 投诉
网友: 本站网友 时间:2008-12-13 22:58:24 IP地址:124.117.94.★
大幅 发大水

网友: MENG想劲 时间:2008-12-15 15:25:26 IP地址:125.34.193.★
fdssdsdfdfsdf

网友: 方法 时间:2009-02-13 12:05:17 IP地址:123.6.186.★
JSONArray 是哪个jar的类?

网友: 海鑫 时间:2009-02-17 10:00:37 IP地址:123.6.35.★
应该是在ezmorph.jar这个包里,或者是json-lib.jar这个包里,两个包你都找一下,时间久了,一下子记不起来了。

网友: 本站网友 时间:2009-04-25 17:45:17 IP地址:116.30.11.★
谢谢...随我很有用

网友: 本站网友 时间:2009-05-30 13:29:16 IP地址:58.248.109.★
12

网友: 逍遥 时间:2009-06-24 11:25:38 IP地址:211.156.222.★
很好很强大


给我留言
版权所有 ChinaUnix.net 页面生成时间:0.19065