Ajax如何实现弹出式无刷新城市选择功能

这篇文章给大家分享的是有关Ajax如何实现弹出式无刷新城市选择功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

创新互联是工信部颁发资质IDC服务器商,为用户提供优质的成都移动机房托管服务

具体如下:

这是一款很棒的全国城市选择效果,添加城市时先添加组:找到id是"selectSub"中select标签下,添加option标签,value属性递增,找到id是"selectSub",按照原有格式添加div,其id属性递增;然后添加二级副选框选项:复制id是"selectSub"下任意input标签,粘贴在需要添加的位置即可,你想扩展的话,配合动态语言完全可以将城市从数据库中读取出来。

运行效果截图如下:

Ajax如何实现弹出式无刷新城市选择功能

在线演示地址如下:

http://demo.jb51.net/js/2015/js-ajax-dialog-cha-city-codes/

具体代码如下:




Ajax弹出式无刷新城市选择特效


BODY {
 FONT-SIZE: 12px; PADDING-TOP: 50px
}
H2 {
 PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px
}
.bton {
 BORDER-RIGHT: #ccc 1px solid; BORDER-TOP: #ccc 1px solid; BACKGROUND: #ddd; BORDER-LEFT: #ccc 1px solid; BORDER-BOTTOM: #ccc 1px solid
}
.cont {
 PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; PADDING-TOP: 10px
}
#main {
 MARGIN: 0px auto; WIDTH: 400px
}
#selectItem {
 BORDER-RIGHT: #000 1px solid; BORDER-TOP: #000 1px solid; MARGIN-TOP: 10px; Z-INDEX: 2; BACKGROUND: #fff; OVERFLOW: hidden; BORDER-LEFT: #000 1px solid; WIDTH: 400px; BORDER-BOTTOM: #000 1px solid; POSITION: absolute; TOP: 0px
}
#preview {
 BORDER-RIGHT: #ccc 1px solid; BORDER-TOP: #ccc 1px solid; MARGIN: 1px; BORDER-LEFT: #ccc 1px solid; BORDER-BOTTOM: #ccc 1px solid
}
#result {
 BORDER-RIGHT: #ccc 1px solid; BORDER-TOP: #ccc 1px solid; MARGIN-TOP: 10px; BORDER-LEFT: #ccc 1px solid; BORDER-BOTTOM: #ccc 1px solid
}
.tit {
 PADDING-LEFT: 10px; MARGIN: 1px; LINE-HEIGHT: 20px; HEIGHT: 20px
}
.bgc_ccc {
 BACKGROUND: #ccc
}
.bgc_eee {
 BACKGROUND: #eee
}
.c_999 {
 COLOR: #999
}
.pointer {
 CURSOR: pointer
}
.left {
 FLOAT: left
}
.right {
 FLOAT: right
}
.cls {
 CLEAR: both; FONT-SIZE: 0px; OVERFLOW: hidden; HEIGHT: 0px
}
#bg {
 DISPLAY: none; Z-INDEX: 1; BACKGROUND: #ccc; FILTER: alpha(opacity=70); LEFT: 0px; WIDTH: 100%; POSITION: absolute; TOP: 0px; opacity: 0.7
}
.hidden {
 DISPLAY: none
}
.move {
 CURSOR: move
}




 
 
 
 

您已选择的城市汇总

 
 
 
   请选择城市:  [取消]  [确定]            中国名城   魅力城市  东北三省  世界城市       北京  福建  四川  江苏      上海  云南  贵州      黑龙江  吉林  辽宁      美国  阿富汗  日本            

您已选择:

      var grow = $("selectSub").getElementsByTagName("option").length; //组数 var showGrow = 0;//已打开组 var selectCount = 0; //已选数量  showSelect(showGrow); var items = $("selectSub").getElementsByTagName("input"); function $(o){  if(typeof(o) == "string")  return document.getElementById(o);  return o; } function openBg(state){  if(state == 1)  {   $("bg").style.display = "block";   var h = document.body.offsetHeight > document.documentElement.offsetHeight ? document.body.offsetHeight : document.documentElement.offsetHeight;   $("bg").style.height = h + "px";  }  else  {   $("bg").style.display = "none";  }  } function openSelect(state){  if(state == 1)   {   $("selectItem").style.display = "block";   $("selectItem").style.left = ($("bg").offsetWidth - $("selectItem").offsetWidth)/2 + "px";   $("selectItem").style.top = document.body.scrollTop + 100 + "px";    }  else  {   $("selectItem").style.display = "none";  } } function showSelect(id){  for(var i = 0 ; i < grow ;i++)  {   $("c0" + i).style.display = "none";  }  $("c0" + id).style.display = "block";  showGrow = id; } function open(id,state){   if(state == 1)  $(id).style.display = "block";  $(id).style.diaplay = "none"; } function addPreItem(){   $("previewItem").innerHTML = "";  var len = 0 ;  for(var i = 0 ; i < items.length ; i++)  {   if(items[i].checked == true)   {    var mes = "" + items[i].value;    $("previewItem").innerHTML += mes;   }  } } function makeSure(){  openBg(0);  openSelect(0);  copyItem("previewItem","makeSureItem")  } function copyHTML(id1,id2){  $(id2).innerHTML = $("id1").innerHTML; } function copyItem(id1,id2){    var mes = "";  var items2 = $(id1).getElementsByTagName("input");  for(var i = 0 ; i < items2.length ; i++)  {   if(items2[i].checked == true)   {   mes += "" + items2[i].value;      }  }  $(id2).innerHTML = "";  $(id2).innerHTML += mes; } function same(ck){  for(var i = 0 ; i < items.length ; i++)  {   if(ck.value == items[i].value)   {    items[i].checked = ck.checked;   }  } }  var oDrag = ""; var ox,oy,nx,ny,dy,dx; function drag(e,o){  var e = e ? e : event;  var mouseD = document.all ? 1 : 0;  if(e.button == mouseD)  {   oDrag = o.parentNode;   ox = e.clientX;   oy = e.clientY;    } } function dragPro(e){  if(oDrag != "")  {    var e = e ? e : event;   dx = parseInt($(oDrag).style.left);   dy = parseInt($(oDrag).style.top);   nx = e.clientX;   ny = e.clientY;   $(oDrag).style.left = (dx + ( nx - ox )) + "px";   $(oDrag).style.top = (dy + ( ny - oy )) + "px";   ox = nx;   oy = ny;  } } document.onmouseup = function(){oDrag = "";} document.onmousemove = function(event){dragPro(event);}

感谢各位的阅读!关于“Ajax如何实现弹出式无刷新城市选择功能”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


本文题目:Ajax如何实现弹出式无刷新城市选择功能
分享链接:http://cdiso.cn/article/ppgpgg.html