web前端实现级联绑定
来源:互联网 发布:java从键盘输入字符串 编辑:程序博客网 时间:2024/05/22 10:39
如何来描述这个问题了???
实现网页上级联绑定,就像我们选择国家之后,省份栏会自动出现国家对应的省份,当选择一个省份之后,县级市栏会自动出现对应的县级市。
这就是简单的数据库的级联绑定。
结合我开发的项目进行一些总结:
1、要实现的效果:调用AMS、道聚城接口绑定在线任务
当我选择一个平台时,在活动栏目下拉框中对自动匹配相应的活动。
前端代码html:
<dt>平台:</dt><dd><select id="FactPlat" name="FactPlat" ><option value="0">--请选择平台--</option><option {if $actInfo.FactPlat == "1"}selected=selected{/if} value="1">AMS</option><option {if $actInfo.FactPlat == "2"}selected=selected"{/if} value="2">道聚城</option><select></dd> <dt>活动:</dt><dd><select id="FplatActionId" name="FplatActionId"><option value="0">--请选择活动--</option><select><input type="hidden" id="FactJson" name="FactJson" value="" /></dd>当选择一个平台之后,通过平台FactPlat的变化去触发,获取所有与平台对应的活动。
js文件中的代码如下:
function getActList(){ var platformid = $('#FactPlat').val(); var _businessType = CookieManager.getCookie("cur_business"); //获取当前业务 if(platformid == '1'){ //AMS平台 var url ='http://ams.ied.com/atm/help/activityList.php?sServiceType='+_businessType+'&type=json'; $.getScript(url,function(){ $('#FplatActionId').find('option').remove();//清空 $('#FplatActionId').append($("<option></option>").attr("value", "0").text("--请选择--")); for( var i=0;i<actList.data.data.length;i++){ if(actList.data.data[i].iId==platActionId){ $('#FplatActionId').append($("<option selected=selected></option>").attr('id',i).attr("value",actList.data.data[i].iId).text(actList.data.data[i].sActivityName)); }else{ $('#FplatActionId').append($("<option></option>").attr('id',i).attr("value",actList.data.data[i].iId).text(actList.data.data[i].sActivityName)); } } ajaxLogList(); $('#FplatActionId').change(function(){ //平台id发生变化时,获取AMS/道聚城活动的详细信息 var obj = actList.data.data[$("#FplatActionId").find("option:selected").attr('id')]; $('#FactJson').attr('value',JSON.stringify(obj)); }); }) }else if(platformid == '2'){//道聚城平台 var url ='http://admin.daoju.ied.com/open/gpm/activity_list.php?bz='+_businessType; $.getScript(url,function(){ $('#FplatActionId').find('option').remove(); $('#FplatActionId').append($("<option></option>").attr("value", "0").text("--请选择--")); for( var i=0;i<activity_list.data.length;i++){ if(activity_list.data[i].iActionId==platActionId){ $('#FplatActionId').append($("<option selected=selected></option>").attr('id',i).attr("value",activity_list.data[i].iActionId).text(activity_list.data[i].sActionName)); }else{ $('#FplatActionId').append($("<option></option>").attr('id',i).attr("value",activity_list.data[i].iActionId).text(activity_list.data[i].sActionName)); } } //ajaxLogList('',$("#FplatActionId").find("option:selected").attr('value')) //循环的调用ajaxLogList函数 ajaxLogList(); $('#FplatActionId').change(function(){ //平台id发生变化时,获取活动的详细信息 var obj = activity_list.data[$("#FplatActionId").find("option:selected").attr('id')]; $('#FactJson').attr('value',JSON.stringify(obj)); }); }) } }
platformid==2表示选择的平台为道聚成,它们只是获取数据的url不同,其他的都是完全一样的。
这里主要用到了getScript异步请求数据。这里的代码不一一解释,但是每一行代码都非常非常的重要。。
主要运用到的设计构架如下图:
客户端、服务器之间的访问关系:
这里必须注意,上面的函数是在选择了某一个平台之后触发的,也就是每次刷新的时候都要重新进行触发,要不然就不会出现下拉框的值,解决办法是,除了在选择平台时进行触发函数,同时在触发之后再一次调用该函数。
$(document).ready(function(){ $('#FactPlat').change(function(){ getActList(); });});
- web前端实现级联绑定
- 使用反映实现前端WEB窗口控件与后台数据库类对象的动态绑定
- 使用反映实现前端WEB窗口控件与后台数据库类对象的动态绑定
- web 前端实现
- WINFORM 中datagridview 里绑定combobox实现级联事件
- 使用dropdownlist的绑定_实现省市列表级联
- 级联菜单的动态实现(数据库绑定)
- Web前端实现本地存储
- AJAX实现web页面中级联菜单的设计
- AJAX实现web页面中级联菜单的设计
- AJAX实现web页面中级联菜单的设计
- AJAX实现web页面中级联菜单的设计
- 关于WEB程序硬件绑定的实现
- web ajax +kendo实现Grid绑定
- treeview绑定到关系数据源,生成树,并实现checkbox的级联选择
- 创建数据库表 province 和 city ,使用 dropdownlist 的绑定,实现省市列表级联。
- 创建数据库表 province 和 city ,使用 dropdownlist 的绑定,实现省市列表级联。
- 中文拼音排序(web前端实现)
- static
- HL7及PIX相关的测试工具
- 最短路径Dijkstra算法实现
- java设计模式之动态代理模式!
- HDU 2273
- web前端实现级联绑定
- 【使用了USB3.0扩展卡却没有加速怎么办】
- 小程序(十五)删除一个字符串中出现最少的字符
- HDU4570----Multi-bit Trie----简单的DP
- 给定无序数组A,在线性时间内找到i和j,j>i,并且保证A[j]-A[i]是最大的。
- WordPress模板制作技术手册
- android学习笔记15:方向传感器 指南针
- 我的异常Exception备忘学习JAVA牛人--有摘抄
- C语言栈与队列疑难点解析