hi, I'm working around KendoUI Wrappers for ASP.NET MVC 4 .
Now, I'm having some problems with my Cascading DropdownList when I reload Parent data.
for example:
1. I have a dropdown list like this: Level 1 > Level 2 (Level 2 cascades from Level 1).
If i reload data from Level 1.
=> Level 2 will reload data from server too.
but: if (Level 2 Old Values == Level 2 New Values) => Level 2 doesn't reset to default value anymore.
2. The second issue that: When i have a Dropdown List with more than 3 levels.
Ex : Level 1 > Level 2 > Level 3 > Level 4>Level n.
I reload data from Level 1
=> It resets Level 2 , Level 3 to default Values .
=> but it can't reset Level 4 and level n...
So, how can i resolve these problems :-s ...
and This is my code:
Now, I'm having some problems with my Cascading DropdownList when I reload Parent data.
for example:
1. I have a dropdown list like this: Level 1 > Level 2 (Level 2 cascades from Level 1).
If i reload data from Level 1.
=> Level 2 will reload data from server too.
but: if (Level 2 Old Values == Level 2 New Values) => Level 2 doesn't reset to default value anymore.
2. The second issue that: When i have a Dropdown List with more than 3 levels.
Ex : Level 1 > Level 2 > Level 3 > Level 4>Level n.
I reload data from Level 1
=> It resets Level 2 , Level 3 to default Values .
=> but it can't reset Level 4 and level n...
So, how can i resolve these problems :-s ...
and This is my code:
<
div
class
=
"table-row"
>
<
div
class
=
"table-col-left"
>
@(Html.Kendo().DropDownList()
.Name("rims-addr-level1")
.OptionLabel("-- Chọn ÐVHC Cấp 1 --")
.DataTextField("TenDonViHanhChinh")
.DataValueField("IdDonViHanhChinh")
.BindTo(ViewBag.DVHCLevel1)
.Value(obj_DefaultData.IdDVHCLevel1)
)
</
div
>
<!--END div.table-col-left -->
<
div
class
=
"table-col-right"
>
<
script
type
=
"text/javascript"
>
function RimsAddrLevel1Item() {
return {
IdDVHC: $("#rims-addr-level1").val()
};
}
</
script
>
@(Html.Kendo().DropDownList()
.Name("rims-addr-level1-item")
.OptionLabel("Select ...")
.DataTextField("TenTinhThanh1")
.DataValueField("IdTinhThanh")
.DataSource(source => {
source.Read(read =>
{
read.Action("FindAllTinhThanhByIdDVHC", "Base").Data("RimsAddrLevel1Item").Type(HttpVerbs.Post);
})
.ServerFiltering(true);
})
.Enable(false)
.AutoBind(false)
.CascadeFrom("rims-addr-level1")
.Value(obj_DefaultData.IdL01TinhThanh)
)
</
div
>
<!--END div.table-col-right -->
</
div
>
<!--END div.table-row TinhThanh---------------------------------- -->
<
div
class
=
"table-row"
>
<
div
class
=
"table-col-left"
>
<
script
type
=
"text/javascript"
>
function RimsAddrLevel2() {
return {
IdDVHC: $("#rims-addr-level1").val()
};
}
</
script
>
@(Html.Kendo().DropDownList()
.Name("rims-addr-level2")
.OptionLabel("-- Chọn ÐVHC Cấp 2 --")
.DataTextField("TenDonViHanhChinh")
.DataValueField("IdDonViHanhChinh")
.DataSource(source => {
source.Read(read =>
{
read.Action("FindAllChildDVHCByIdDvhc", "Base").Data("RimsAddrLevel2").Type(HttpVerbs.Post);
})
.ServerFiltering(true);
})
.Enable(false)
.AutoBind(false)
.CascadeFrom("rims-addr-level1-item")
.Value(obj_DefaultData.IdDVHCLevel2)
)
</
div
>
<!--END div.table-col-left -->
<
div
class
=
"table-col-right"
>
<
script
type
=
"text/javascript"
>
function RimsAddrLevel2Item() {
return {
IdDVHC: $("#rims-addr-level2").val(),
IdTinhThanh: $("#rims-addr-level1-item").val()
};
}
</
script
>
@(Html.Kendo().DropDownList()
.Name("rims-addr-level2-item")
.OptionLabel("Select ...")
.DataTextField("TenQuanHuyen1")
.DataValueField("IdQuanHuyen")
.DataSource(source => {
source.Read(read =>
{
read.Action("FindAllQuanByIDTinhThanh", "Base").Data("RimsAddrLevel2Item").Type(HttpVerbs.Post);
})
.ServerFiltering(true);
})
.Enable(false)
.AutoBind(false)
.CascadeFrom("rims-addr-level2")
.Value(obj_DefaultData.IdL02QuanHuyen)
)
</
div
>
<!--END div.table-col-right -->
</
div
>
<!--END div.table-row QuanHuyen---------------------------------- -->
<
div
class
=
"table-row"
>
<
div
class
=
"table-col-left"
>
<
script
type
=
"text/javascript"
>
function RimsAddrLevel3() {
return {
IdDVHC: $("#rims-addr-level2").val()
};
}
</
script
>
@(Html.Kendo().DropDownList()
.Name("rims-addr-level3")
.OptionLabel("-- Ch?n ÐVHC C?p 3 --")
.DataTextField("TenDonViHanhChinh")
.DataValueField("IdDonViHanhChinh")
.DataSource(source => {
source.Read(read =>
{
read.Action("FindAllChildDVHCByIdDvhc", "Base").Data("RimsAddrLevel3").Type(HttpVerbs.Post);
})
.ServerFiltering(true);
})
.Enable(false)
.AutoBind(false)
.CascadeFrom("rims-addr-level2-item")
.Value(obj_DefaultData.IdDVHCLevel3)
)
</
div
>
<!--END div.table-col-left -->
<
div
class
=
"table-col-right"
>
<
script
type
=
"text/javascript"
>
function RimsAddrLevel3Item() {
return {
IdDVHC: $("#rims-addr-level3").val(),
IdQuan: $("#rims-addr-level2-item").val()
};
}
</
script
>
@(Html.Kendo().DropDownList()
.Name("rims-addr-level3-item")
.OptionLabel("Select ...")
.DataTextField("TenPhuongXa1")
.DataValueField("IdPhuongXa")
.DataSource(source => {
source.Read(read =>
{
read.Action("FindAllPhuongXaByIDQuan", "Base").Data("RimsAddrLevel3Item").Type(HttpVerbs.Post);
})
.ServerFiltering(true);
})
.Enable(false)
.AutoBind(false)
.CascadeFrom("rims-addr-level3")
.Value(obj_DefaultData.IdL03PhuongXa)
)
</
div
>
<!--END div.table-col-right -->
</
div
>
<!--END div.table-row PhuongXa---------------------------------- -->
<
div
class
=
"table-row"
>
<
div
class
=
"table-col-left"
>
<
script
type
=
"text/javascript"
>
function RimsAddrLevel4() {
return {
IdDVHC: $("#rims-addr-level3").val()
};
}
</
script
>
@(Html.Kendo().DropDownList()
.Name("rims-addr-level4")
.OptionLabel("-- Ch?n ÐVHC C?p 4 --")
.DataTextField("TenDonViHanhChinh")
.DataValueField("IdDonViHanhChinh")
.DataSource(source => {
source.Read(read =>
{
read.Action("FindAllChildDVHCByIdDvhc", "Base").Data("RimsAddrLevel4").Type(HttpVerbs.Post);
})
.ServerFiltering(true);
})
.Enable(false)
.AutoBind(false)
.CascadeFrom("rims-addr-level3-item")
.Value(obj_DefaultData.IdDVHCLevel4)
)
</
div
>
<!--END div.table-col-left -->
<
div
class
=
"table-col-right"
>
<
script
type
=
"text/javascript"
>
function RimsAddrLevel4Item() {
return {
IdDVHC: $("#rims-addr-level4").val(),
IdPhuongXa: $("#rims-addr-level3-item").val()
};
}
</
script
>
@(Html.Kendo().DropDownList()
.Name("rims-addr-level4-item")
.OptionLabel("Select ...")
.DataTextField("TenDuongKhu1")
.DataValueField("IdDuongKhu")
.DataSource(source => {
source.Read(read =>
{
read.Action("FindAllDuongKhuByIdPhuongXa", "Base").Data("RimsAddrLevel4Item").Type(HttpVerbs.Post);
})
.ServerFiltering(true);
})
.Enable(false)
.AutoBind(false)
.CascadeFrom("rims-addr-level4")
.Value(obj_DefaultData.IdL04DuongKhu)
)
</
div
>
<!--END div.table-col-right -->
</
div
>
<!--END div.table-row DuongKhu---------------------------------- -->