用 PHPRPC 实现 Ajax 级联下拉菜单-php进阶-PHP教程-幽默笑话
西方诗歌
来源:本站
2019-07-12

用 PHPRPC 实现 Ajax 级联下拉菜单-php进阶-PHP教程-幽默笑话

下载:://创建phprpc客户端对象rpcphprpc_(rpc);varcity=[];//用于缓存已加载的城市数据/**清除select中的选项,该方法可复用**so:要清除选项的select对象**/functionclear_select(so){for(vari=;i-1;i--){//有些浏览器不支持options属性的remove方法,//但支持DOM的removeChild方法(比如:Konqueror)if(){(i);}else{([i]);}}}/**设置select中的选项,该方法可复用**so:要设置选项的select对象*d:选项数据数组*vf:选项值所对应的数组中的字段名*tf:选项文本所对应的数组中的字段名*/functionset_select(so,d,vf,tf){for(vari=0,n=;in;i++){varopt=(option);=d[i][tf];=d[i][vf];//有些浏览器不支持options属性的add方法,//但支持DOM的appendChild方法(比如:Konqueror)if(){(opt);}else{(opt);}}}//设置省份的下拉菜单functionset_province_select(d){varso=(province);set_select(so,d,id,name);//设置首选省份的城市下拉列表change_province(1);}//设置城市的下拉菜单functionset_city_select(d,vf,tf){varso=(city);//清空原有选项clear_select(so);//设置新选项set_select(so,d,vf,tf);}//当省份改变,相应的改变城市列表functionchange_province(pid){//如果已缓存,则直接显示缓存中的列表if(city[pid]){set_city_select(city[pid],id,name);}else{//否则,先显示载入中set_city_select([[,Loading...]],0,1);//然后调用远程过程载入城市信息//调用远程过程时,最后一个参数指定的是回调函数_city(pid,function(result){//把载入的数据放入缓存city[pid]=result;//更新城市列表set_city_select(result,id,name);});}}//定义当rpc客户端初始化(use_service)完毕后执行的内容=function(){//调用获取省份内容的远程过程,并设置回调函数为set_province__province(set_province_select);}(非常全面的一个php技术网站,有相当丰富的文章和源代码.)下载::htmlheadscripttype="text/javascript"src="phprpc_"/scriptscripttype="text/javascript"src=""/script/headbodyonload="_service();"selectid="province"onchange="change_province();"/selectselectid="city"/select/body/html(非常全面的一个php技术网站,有相当丰富的文章和源代码.)上面的html中包含的phprpc_是压缩版本(因为不需要用到加密,这里是lite压缩版)的,这样可以免去包含多个js文件的麻烦。