三级联动相信大多数人都很好的实现过,今天我是小小的改动了下。当下拉列表里选择某一个地区时,相应的另外一个下拉列表先出现:Please Wait,0.5秒后再显示ajax获取的数据。这样用户体验稍微好一点。下面是我的js代码:
//Region&country
$('#Article_code').change(function(){
var country=$('#Article_code option:selected').val();
var data={'country':country};
var url='<?php echo Yii::app()->createUrl('Manage/article/getRegion'); ?>';
if(country==0) {
$('#Article_region_id option').remove();
$('#Article_region_id').append($('<option value=0>Choose Region</option>'));
return false;
}
$.ajax({
type:'post',
data:data,
url:url,
beforeSend:function(){
$('#Article_region_id option:first').text('Please Wait');
},
success:function(json){
window.setTimeout(function(){
var data=eval(json);
var str='';
str+='<option value=0>Choose Region</option>';
if(!data.empty){
for(var i=0;i<data.id.length;i++){
str+='<option value='+data.id[i]+'>'+data.name[i]+'</option>';
}
}
$('#Article_region_id option').remove();
$('#Article_region_id').append(str);
},500);
},
dataType:'json'
});
});
以上是代码,在ajax发送前,beforeSend里把第一个option里的内容修改为Please Wait,在success里调用window.setTimeout延迟0.5秒将数据显示到另一个下拉列表里。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。