Ajax+Json 级联菜单实现代码


Posted in Javascript onOctober 27, 2009

第一个下拉框:

<select id="select" name="rawfoodBasic.category" onchange="doChange(this.value);"> 
//第一个下拉框里的值 
</select>

第二个下拉框:
<select id="subSelect" name="rawfoodBasic.absorb" onchange="javascript:alert(this.value);" > //要3及菜单还可以在次写相应的时间 
<option value="0">--请选择二级菜单-- </option> 
</select>

js代码:
<script type="text/javascript"> 
$.ajaxSetup({ 
cache:false 
}); //清除ajax中之前的值 
function doChange(obj){ 
var url = '<c:url value="/nutrition/getSubDictDataToJsonByCategory.action"/>'+"?rawfood.category="+obj;//第一个下拉框选中后进入的action,action中给第二个下拉框所需的值赋值 
$.getJSON(url,function(json){ 
var seleOjb=document.getElementById("subSelect"); 
for(var k=0;k<seleOjb.options.length;k++){ 
seleOjb.options.remove(k); //当再选中第一个下拉框中的值时,把第二个下拉框中原来的值清除 
} 
$.each(json.subCategoryDictList,function(index,subDictData){ 
var optionj=document.createElement("option"); //为第二个下拉框赋值 
optionj.value = subDictData.id; 
//alert(subDictData.id); 
optionj.text=subDictData.name; 
seleOjb.add(optionj); 
}); 
}); 
} 
</script>

<action name="getSubDictDataToJsonByCategory" class="rawfoodAction" method="getSubDictDataToJsonByCategory"> 
<result name="success" type="json"> 
<param name="includeProperties"> //定义返回的参数 
^subCategoryDictList\[\d+\]\.id, 
^subCategoryDictList\[\d+\]\.name 
</param> 
</result> 
</action>
Javascript 相关文章推荐
用javascript获得地址栏参数的两种方法
Nov 08 Javascript
获取body标签的两种方法
Oct 13 Javascript
javascript中xml操作实现代码
Nov 21 Javascript
js猜数字小游戏的简单实现代码
Jul 02 Javascript
Javascript中With语句用法实例
May 14 Javascript
浅谈javascript函数式编程
Sep 06 Javascript
jquery.validate 自定义验证方法及validate相关参数
Jan 18 Javascript
jQuery实现摸拟alert提示框
May 22 Javascript
详解AngularJS如何实现跨域请求
Aug 22 Javascript
jQuery扩展实现text提示还能输入多少字节的方法
Nov 28 Javascript
使用angularjs.foreach时return的问题解决
Sep 30 Javascript
layui点击弹框页面 表单请求的方法
Sep 21 Javascript
javascript 关于# 和 void的区别分析
Oct 26 #Javascript
用Greasemonkey 脚本收藏网站会员信息到本地
Oct 26 #Javascript
解决jquery .ajax 在IE下卡死问题的解决方法
Oct 26 #Javascript
解决表单中第一个非隐藏的元素获得焦点的一个方案
Oct 26 #Javascript
innerhtml用法 innertext用法 以及innerHTML与innertext的区别
Oct 26 #Javascript
几个javascript操作word的参考代码
Oct 26 #Javascript
javascript 操作Word和Excel的实现代码
Oct 26 #Javascript
You might like
音乐朗读剧《MARS RED》2021年TV动画化决定!
2020/03/06 日漫
异世界新番又来了,同样是从零开始,男主的年龄降到5岁
2020/04/09 日漫
PHP判断远程图片或文件是否存在的实现代码
2014/02/20 PHP
YII实现分页的方法
2014/07/09 PHP
PHP 获取ip地址代码汇总
2015/07/05 PHP
php版微信公众账号第三方管理工具开发简明教程
2016/09/23 PHP
详解php协程知识点
2018/09/21 PHP
如何在Laravel5.8中正确地应用Repository设计模式
2019/11/26 PHP
JSON序列化与解析原生JS方法且IE6和chrome测试通过
2013/09/05 Javascript
js动态添加事件并可传参数示例代码
2013/10/21 Javascript
getAsDataURL在Firefox7.0下无法预览本地图片的解决方法
2013/11/15 Javascript
详解js图片轮播效果实现原理
2015/12/17 Javascript
基于JavaScript短信验证码如何实现
2016/01/24 Javascript
封装属于自己的JS组件
2016/01/27 Javascript
javascript求日期差的方法
2016/03/02 Javascript
Vue.js做select下拉列表的实例(ul-li标签仿select标签)
2018/03/02 Javascript
webpack4.0打包优化策略整理小结
2018/03/30 Javascript
node前端模板引擎Jade之标签的基本写法
2018/05/11 Javascript
JS实现可针对算术表达式求值的计算器功能示例
2018/09/04 Javascript
详解三种方式解决vue中v-html元素中标签样式
2018/11/22 Javascript
解决layui的form里的元素进行动态生成,验证失效的问题
2019/09/14 Javascript
基于element-ui对话框el-dialog初始化的校验问题解决
2020/09/11 Javascript
vue 插槽简介及使用示例
2020/11/19 Vue.js
Python正则表达式介绍
2012/08/06 Python
深入理解 Python 中的多线程 新手必看
2016/11/20 Python
Python数据操作方法封装类实例
2017/06/23 Python
Python开发最牛逼的IDE——pycharm
2018/08/01 Python
对python pandas 画移动平均线的方法详解
2018/11/28 Python
Python实现的对一个数进行因式分解操作示例
2019/06/27 Python
标准导师推荐信(医学类)
2013/10/28 职场文书
监理员的岗位职责
2013/11/13 职场文书
邀请书格式范文
2015/02/02 职场文书
研究生个人学年总结
2015/02/14 职场文书
复试通知单模板
2015/04/24 职场文书
linux下导入、导出mysql数据库命令的实现方法
2021/05/26 MySQL
JavaScript实现登录窗体
2021/06/22 Javascript