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 相关文章推荐
网页源代码保护(禁止右键、复制、另存为、查看源文件)
May 23 Javascript
JavaScript中的面向对象介绍
Jun 30 Javascript
javascript中apply和call方法的作用及区别说明
Feb 14 Javascript
javascript的正则匹配方法学习
Feb 24 Javascript
以WordPress为例讲解jQuery美化页面Title的方法
May 23 Javascript
Bootstrap datepicker日期选择器插件使用详解
Jul 26 Javascript
纯js实现图片匀速淡入淡出效果
Aug 22 Javascript
Vuex 进阶之模块化组织详解
Jan 12 Javascript
Vue组件和Route的生命周期实例详解
Feb 10 Javascript
Vue中android4.4不兼容问题的解决方法
Sep 04 Javascript
js中怎么判断两个字符串相等的实例
Jan 17 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
重量级动漫纷纷停播!唯独OVERLORD第四季正在英魂之刃继续更新
2020/05/06 日漫
php生成缩略图的类代码
2008/10/02 PHP
PHP全概率运算函数(优化版) Webgame开发必备
2011/07/04 PHP
PHP使用mysql_fetch_row查询获得数据行列表的方法
2015/03/18 PHP
mod_php、FastCGI、PHP-FPM等PHP运行方式对比
2015/07/02 PHP
php超快高效率统计大文件行数
2015/07/05 PHP
thinkphp中AJAX返回ajaxReturn()方法分析
2016/12/06 PHP
浅析PHP中的 inet_pton 网络函数
2019/12/16 PHP
页面中js执行顺序
2009/11/09 Javascript
Javascript学习笔记2 函数
2010/01/11 Javascript
MooBox 基于Mootools的对话框插件
2012/01/20 Javascript
获取表单控件原始(初始)值的方法
2013/08/21 Javascript
jQuery给元素添加样式的方法详解
2015/12/30 Javascript
Bootstrap使用基础教程详解
2016/09/05 Javascript
微信小程序 后台https域名绑定和免费的https证书申请详解
2016/11/10 Javascript
详解vue-cli 构建Vue项目遇到的坑
2017/08/30 Javascript
vue.js使用watch监听路由变化的方法
2018/07/08 Javascript
JavaScript中concat复制数组方法浅析
2019/01/20 Javascript
JavaScript类的继承多种实现方法
2020/05/30 Javascript
jquery实现简易验证插件封装
2020/09/13 jQuery
[01:47]2018年度DOTA2最具人气解说-完美盛典
2018/12/16 DOTA
[53:50]CHAOS vs Mineski 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
举例讲解Python中的Null模式与桥接模式编程
2016/02/02 Python
ansible动态Inventory主机清单配置遇到的坑
2020/01/19 Python
解决Tensorflow 内存泄露问题
2020/02/05 Python
django model的update时auto_now不被更新的原因及解决方式
2020/04/01 Python
Python Dict找出value大于某值或key大于某值的所有项方式
2020/06/05 Python
使用Python-OpenCV消除图像中孤立的小区域操作
2020/07/05 Python
python 如何快速复制序列
2020/09/07 Python
为中国消费者甄选天下优品:网易严选
2016/08/11 全球购物
Forever 21美国官网:美国标志性快时尚品牌
2017/02/20 全球购物
行政专员岗位职责
2014/01/02 职场文书
找工作求职信
2014/07/07 职场文书
教师群众路线教育实践活动个人对照检查材料
2014/11/04 职场文书
2014幼儿园卫生保健工作总结
2014/12/05 职场文书
应届生个人的求职(自荐信范文2篇)
2019/08/23 职场文书