首页 新闻 会员 周边 捐助

三级联动的jq怎么写

0
[已解决问题] 解决于 2016-08-31 19:40

关于省级的


function init() {
$("select[name='ProvId']").change(function () {
var selectedProvince = $(this).val();
ShowCityWithSelectedProvince(selectedProvince);
});
}

function ShowCityWithSelectedProvince(province) {
$.ajax({
url: "@Url.Action("ShowCity")",
data: { provinceId: province },
async: false,
success: function (data) {
$(".city").empty().html(data);
}
});
}

这样写,但是市级的出现之后,我的change事件一直没有被触发,所以县级的一直就没出现。请问那个触发事件要怎么写好呢

NeXT、的主页 NeXT、 | 菜鸟二级 | 园豆:295
提问于:2016-08-26 00:35
< >
分享
最佳答案
0

我有jq三级联动小demo,关注我博客传给你,保证你会,不要感谢我,请叫我雷锋

奖励园豆:5
辽辽 | 菜鸟二级 |园豆:213 | 2016-08-26 15:33
其他回答(1)
0

你都没给市级下拉加change事件,怎么会出现县级呢?

顾晓北 | 园豆:10898 (专家六级) | 2016-08-26 08:34

我写了,没发上来,你看看市级触发这个有啥问题
function area() {
$("select[name='CityId']").change(function () {
var selectedCity = $(this).val();
ShowAreaWithSelectedCity(selectedCity ); 
});
}

function ShowAreaWithSelectedCity(CityId ) {
$.ajax({
url: "@Url.Action("ShowArea")",
data: { cityId: CityId },
async: false,
success: function (data) {
$(".area").empty().html(data);
}
});
}

支持(0) 反对(0) NeXT、 | 园豆:295 (菜鸟二级) | 2016-08-26 10:08

@NeXT1995: 看着真累,你应该以插入代码的形式插入代码。。。

另外,那看这个意思至少你在页面加载完,也就是在$(document).ready(function(){});这里面要调用一下init()跟area了?你要明白,change(function(){}),仅仅是加上事件,并不是触发事件。。。

支持(0) 反对(0) 顾晓北 | 园豆:10898 (专家六级) | 2016-08-26 10:14

@顾晓北:  不好意思刚起床,所以还没打开电脑,刚才就直接敲代码上去了。 $(document).ready(init, area);我有先加了这一句了。

支持(0) 反对(0) NeXT、 | 园豆:295 (菜鸟二级) | 2016-08-26 10:20

@顾晓北: 

$(document).ready(init);
    //当网页上的DOM都载入时,第一层下拉选单也呈现出来了

    //↓显示第二层下拉选单,没加这两段↓的话,第一次网页加载时第二层下拉选单不会出现
    var FirstLevel = $("select[name='ProvId']").val();//第一层选择的值
    ShowCityWithSelectedProvince(FirstLevel);

    var AreaLevel = $("select[name='CityId']").val();
    ShowAreaWithSelectedCity(AreaLevel);

    function init() {
        $("select[name='ProvId']").change(function () {
            var selectedProvince = $(this).val();
            ShowCityWithSelectedProvince(selectedProvince);
            var CityId = $("select[name='CityId']").val();
            ShowAreaWithSelectedCity(CityId);
            $("select[name='CityId']").change(function () {
                var selectCity = $(this).val();
                ShowAreaWithSelectedCity(selectCity);
            });
        });      
    }
View Code
支持(0) 反对(0) NeXT、 | 园豆:295 (菜鸟二级) | 2016-08-26 10:40
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册