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 相关文章推荐
一份老外写的XMLHttpRequest代码多浏览器支持兼容性
Jan 11 Javascript
HTML中Select不用Disabled实现ReadOnly的效果
Apr 07 Javascript
深入了解javascript中的prototype与继承
Apr 14 Javascript
javascript模块化是什么及其优缺点介绍
Sep 02 Javascript
AngularJS快速入门
Apr 02 Javascript
jQuery Easyui使用(一)之可折叠面板的布局手风琴菜单
Aug 17 Javascript
bootstrap日期插件daterangepicker使用详解
Oct 19 Javascript
微信小程序实现列表下拉刷新上拉加载
Jul 29 Javascript
vue 指令和过滤器的基本使用(品牌管理案例)
Nov 04 Javascript
解决vue 子组件修改父组件传来的props值报错问题
Nov 09 Javascript
Node.js+Vue脚手架环境搭建的方法步骤
Mar 08 Javascript
node中短信api实现验证码登录的示例代码
Jan 20 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
一个更简单的无限级分类菜单代码
2007/01/16 PHP
PHP+ACCESS 文章管理程序代码
2010/06/21 PHP
获取PHP警告错误信息的解决方法
2013/06/03 PHP
php中mysql连接和基本操作代码(快速测试使用,简单方便)
2014/04/25 PHP
php实现斐波那契数列的简单写法
2014/07/19 PHP
php获取文件后缀的9种方法
2016/03/22 PHP
php生成网页桌面快捷方式
2017/05/05 PHP
PHP基于PDO调用sqlserver存储过程通用方法【基于Yii框架】
2017/10/07 PHP
php写入mysql中文乱码的实例解决方法
2019/09/17 PHP
JavaScript关于select的相关操作说明
2010/01/13 Javascript
JavaScript CSS修改学习第五章 给“上传”添加样式
2010/02/19 Javascript
localStorage的黑科技-js和css缓存机制
2017/02/06 Javascript
详解Javascript几种跨域方式总结
2017/02/27 Javascript
jQuery实现弹窗居中效果类似alert()
2017/02/27 Javascript
深入理解js 中async 函数的含义和用法
2018/05/13 Javascript
js与jQuery实现获取table中的数据并拼成json字符串操作示例
2018/07/12 jQuery
vue src动态加载请求获取图片的方法
2018/10/17 Javascript
JS前端知识点 运算符优先级,URL编码与解码,String,Math,arguments操作整理总结
2019/06/27 Javascript
[03:23:49]2016.12.17日完美“圣”典全回顾
2016/12/19 DOTA
Python输出9*9乘法表的方法
2015/05/25 Python
Python爬虫实现网页信息抓取功能示例【URL与正则模块】
2017/05/18 Python
Python中的pygal安装和绘制直方图代码分享
2017/12/08 Python
Python变量赋值的秘密分享
2018/04/03 Python
Flask框架响应、调度方法和蓝图操作实例分析
2018/07/24 Python
pytorch 更改预训练模型网络结构的方法
2019/08/19 Python
python 一篇文章搞懂装饰器所有用法(建议收藏)
2019/08/23 Python
Python和Anaconda和Pycharm安装教程图文详解
2020/02/04 Python
Python为何不支持switch语句原理详解
2020/10/21 Python
草莓网化妆品日本站:Strawberrynet日本
2017/10/20 全球购物
美国领先的水果篮送货公司和新鲜水果供应商:The Fruit Company
2018/02/13 全球购物
软件测试企业面试试卷
2016/07/13 面试题
编辑找工作求职信分享
2014/01/03 职场文书
乡镇民主生活会发言材料
2014/10/20 职场文书
会计人员岗位职责
2015/02/03 职场文书
2015年小学语文工作总结
2015/05/25 职场文书
SpringBoot系列之MongoDB Aggregations用法详解
2022/02/12 MongoDB