利用了jquery的ajax实现二级联互动菜单
2013-12-02 00:00
796 查看
菜单资源保存在数据库中。利用了jquery的ajax实现。用到的包有:json-lib-2.2.3-jdk15.jar ezmorph-1.0.6.jar json.js jquery.js
jsp页面的代码:
struts中action的代码
jsp页面的代码:
<%@ page contentType="text/html; charset=gbk"%> <%@ taglib prefix="s" uri="/struts-tags"%> <script type="text/javascript" src="js/jquery.js"></script> <script type="text/javascript" src="js/json.js"></script> <% String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + request.getContextPath() + "/"; out.println(basePath); %> <script type="text/javascript"> jQuery(function($){ //alert("ok"); }); function onchangeShow(oneId){ $.ajax({ url : "<%=basePath%>cateJson.whbs", data : {parentId : oneId}, // 参数 type : "post", cache : false, dataType : "json", //返回json数据 error: function(){ alert('error'); }, success:onchangecallback }); } function onchangecallback(data){ document.all['twoId'].options.length = 0; //清空原有的option var str=""; for(var i=0;i<data.length;i++){ str+="<option value='"+data[i].recordId+"'>"+data[i].title+"</option>" } $("#twoId").html(str); } </script> <html> <body> <div align="center"> 请选择部门类型 <s:select list="rfones" listKey="recordId" listValue="title" name="oneId" theme="simple" id="oneId" value="oneID" onchange="onchangeShow(this.value)"></s:select> 请选择文件类型 <s:select list="rftwos" listKey="recordId" listValue="title" name="twoId" theme="simple" id="twoId" value="twoID"></s:select> </div> </body> </html>
struts中action的代码
/** * des:取得二级联动菜单 * autho:exceljava * date:Nov 20, 2009 * @return * @throws IOException */ public String getJsonCategory() throws IOException{ rfjsons=archiveService.getCategoryByParentID(parentId);//这里从数据库取得数据 net.sf.json.JSONArray jsonObj=net.sf.json.JSONArray.fromObject(rfjsons);//组装成json数据 sendMessage(jsonObj.toString());//向视图push json数据 return null; } /** * des:封装发送json格式的数据回js * autho:exceljava * date:Nov 20, 2009 * @param content * @throws IOException */ public void sendMessage(String content) throws IOException{ HttpServletResponse response = ServletActionContext.getResponse(); response.setCharacterEncoding("UTF-8"); response.getWriter().write(content); }
相关文章推荐
- 利用了jquery的ajax实现二级联互动菜单
- 利用了jquery的ajax实现二级联互动菜单
- 总结一下,在MVC下利用JQUERY实现AJAX提交,并实现AJAX .NET的UpdateProgress功能
- jquery和thinkphp利用formData属性ajax上传并,添加水印,裁剪,实现预览
- 利用jquery实现Ajax技术,post方式传值中文乱码问题的解决办法。
- 利用JQUERY实现多个AJAX请求等待的实例
- 利用JQuery方便实现基于Ajax的数据查询、排序和分页功能
- 利用jQuery实现更简单的Ajax跨域请求
- 基于jQuery的AJAX实现三级联动菜单
- 利用jQuery实现的Ajax 验证用户名是否存在
- 利用jQuery实现的Ajax 验证用户名是否存在
- 利用JQuery jsonp实现Ajax跨域请求 .Net 的*.handler 和 WebService,返回json数据
- 利用JQuery的ajax请求实现文件上传
- javaWeb作业之查看邮件详细信息(利用jQuery的ajax方法实现)
- 利用JQUERY实现多个AJAX请求等待
- 利用JQuery实现ajax异步刷新页面
- 利用php+jQuery+ajax实现汽车车型四级联动下拉菜单
- 利用jquery实现百度新闻导航菜单滑动动画
- 利用jquery完成表单域的收集,利用ajax实现信息传递给服务器存储
- asp.net中利用Jquery+Ajax+Json实现无刷新分页