源代码如下:
$(function () {
var level1 =@ViewBag.level1;
var level2=@ViewBag.level2;
$.post("/service/getcustomersortlist", { parent: 0 }, function (data) {
$("#level1").select2({
data:data
});
//设置初始值
if (level1 != -1)
{
$("#level1").val(level1).trigger("change");
}
$.post("/service/getcustomersortlist", { parent: $("#level1").val() }, function (data) {
$("#level2").select2({
data: data
});
if (level2 != -1)
{
$("#level2").val(level2).trigger("change");
}
});
});
});
经过反复测试,如果想改变这种情况,二级加载需要使用延迟才能避免这种情况,并且延迟500毫秒还不成,需要延迟1000毫秒才可以
这行代码:
$("#level2").val(level2).trigger("change");
改为:
setTimeout($("#level2").val(level2).trigger("change"),1000);