Javascript 如何在mvc中选择后将dropdownlist添加到下一行?
我有一个叫做“对象”的实体{Id,Name,UpperObjectId} dropdownlist的项由那些对象的名称组成Javascript 如何在mvc中选择后将dropdownlist添加到下一行?,javascript,c#,jquery,asp.net-mvc,html.dropdownlistfor,Javascript,C#,Jquery,Asp.net Mvc,Html.dropdownlistfor,我有一个叫做“对象”的实体{Id,Name,UpperObjectId} dropdownlist的项由那些对象的名称组成 @Html.DropDownListFor(model => objectlist[0].TempValue, new SelectList(objectlist, "Id", "Name"), "Choose", new {@onchange = "javascript:GetItems(this.value);", name =
@Html.DropDownListFor(model => objectlist[0].TempValue,
new SelectList(objectlist, "Id", "Name"),
"Choose",
new {@onchange = "javascript:GetItems(this.value);",
name = "newlist",
@class = "form-control"})
在选择列表中的任何项目后,如果所选项目有子对象,我想创建下一行的新dropdownlist
新的dropdownlist应列出其UpperObjectId等于上一个dropdownlist的选定对象id的项。(objectlist.Where(o=>o.UpperObject==selecteditem.Id))
我尝试使用ajax来实现它。若有子对象,那个么创建一个新的下拉列表,它递归地工作,直到并没有子对象为止
但我不知道如何在视图中设计它?我如何使用ajax或任何其他方式来实现它 您可以在图像上看到我的对象列表
- 我用过partialview
- 在控件中,我检查是否有子列表
- 若有,它会将partialview html追加到下一行
- 我用过partialview
- 在控件中,我检查是否有子列表
- 若有,它会将partialview html追加到下一行
function GetItems(objectId) {
var url = '@Url.Action("CreateObjectItems", "Object")';
$.ajax({
url: url,
data: {
objectId: objectId
},
type: "POST",
success: function(data) {
$("#NewdropDownList").html(data);
},
});
$.ajax({
url: url,
data: { nesneId: nesneId },
//cache: false,
type: "POST",
success: function (data) {
var div = document.getElementById('altliste');
div.innerHTML = div.innerHTML + data;
},
error: function (reponse) {
alert("error : " + reponse);
}
});