Html 在asp.core razor页面中设置所选项目
我正在使用ASP核心剃须刀页面。 这是my Edit.cshtml.cs:Html 在asp.core razor页面中设置所选项目,html,razor,asp.net-core,html-select,Html,Razor,Asp.net Core,Html Select,我正在使用ASP核心剃须刀页面。 这是my Edit.cshtml.cs: [BindProperty] public List<Microsoft.AspNetCore.Mvc.Rendering.SelectListItem> CCusers { get; set; } and here I fill CCusers with data: CCusers =new List<Microsoft.AspNetCore.Mvc.Rendering.S
[BindProperty]
public List<Microsoft.AspNetCore.Mvc.Rendering.SelectListItem> CCusers { get; set; }
and here I fill CCusers with data:
CCusers =new List<Microsoft.AspNetCore.Mvc.Rendering.SelectListItem>() {
new Microsoft.AspNetCore.Mvc.Rendering.SelectListItem() { Value = "1", Text = "HR", Selected = true },
new Microsoft.AspNetCore.Mvc.Rendering.SelectListItem() { Value = "2", Text = "IT", Selected = false },
new Microsoft.AspNetCore.Mvc.Rendering.SelectListItem() { Value = "3", Text = "Account", Selected = false },
};
@page
@model CoreRazor.Pages.EditModel
@{
ViewData["Title"] = "Edit";
}
<h2>Edit</h2>
<form method="post">
<select asp-for="@Model.SelectedCCuserIds" asp-items="@Model.CCusers"
multiple="multiple" class="selectpicker"> </select>
@*@Html.DropDownList("NewSelect", Model.CCusers, new { @class = "selectpicker",
@multiple = "multiple" })*@
<div class="form-group">
<input type="submit" value="Save" class="btn btn-default" />
</div>
[BindProperty]
公共列表ccuser{get;set;}
在这里,我用数据填充CCusers:
CCusers=新列表(){
新建Microsoft.AspNetCore.Mvc.Rendering.SelectListItem(){Value=“1”,Text=“HR”,Selected=true},
新建Microsoft.AspNetCore.Mvc.Rendering.SelectListItem(){Value=“2”,Text=“IT”,Selected=false},
新建Microsoft.AspNetCore.Mvc.Rendering.SelectListItem(){Value=“3”,Text=“Account”,Selected=false},
};
在Razor页面中,我使用了两种不同的选择:
<select asp-for="CCusers" asp-items="@Model.CCusers" id="CCusers" multiple="multiple" class="selectpicker"> </select>
//and this:
@Html.DropDownList("NewSelect", Model.CCusers, new { @class = "selectpicker", @multiple = "multiple" })
@page
@model CoreRazor.Pages.EditModel
@{
ViewData["Title"] = "Edit";
}
<h2>Edit</h2>
<form method="post">
<select asp-for="@Model.SelectedCCuserIds" asp-items="@Model.CCusers"
multiple="multiple" class="selectpicker"> </select>
@*@Html.DropDownList("NewSelect", Model.CCusers, new { @class = "selectpicker",
@multiple = "multiple" })*@
<div class="form-group">
<input type="submit" value="Save" class="btn btn-default" />
</div>
//这是:
@Html.DropDownList(“NewSelect”,Model.CCusers,new{@class=“selectpicker”,@multiple=“multiple”})
这是他们两人的结果:
<select id="CCusers" multiple="multiple" class="selectpicker" name="CCusers">
<option value="1">HR</option>
<option value="2">IT</option>
<option value="3">Account</option>
</select>
<select class="selectpicker" id="NewSelect" multiple="multiple" name="NewSelect">
<option selected="selected" value="1">HR</option>
<option value="2">IT</option>
<option value="3">Account</option>
</select>
@page
@model CoreRazor.Pages.EditModel
@{
ViewData["Title"] = "Edit";
}
<h2>Edit</h2>
<form method="post">
<select asp-for="@Model.SelectedCCuserIds" asp-items="@Model.CCusers"
multiple="multiple" class="selectpicker"> </select>
@*@Html.DropDownList("NewSelect", Model.CCusers, new { @class = "selectpicker",
@multiple = "multiple" })*@
<div class="form-group">
<input type="submit" value="Save" class="btn btn-default" />
</div>
人力资源
信息技术
账户
人力资源
信息技术
账户
核心选择没有设置所选项目,而@Httml.DropDownList设置了该项目。
我在第一次选择中缺少什么?对于,您需要为设置asp,它指定选择
元素的模型属性名称
@page
@model CoreRazor.Pages.EditModel
@{
ViewData["Title"] = "Edit";
}
<h2>Edit</h2>
<form method="post">
<select asp-for="@Model.SelectedCCuserIds" asp-items="@Model.CCusers"
multiple="multiple" class="selectpicker"> </select>
@*@Html.DropDownList("NewSelect", Model.CCusers, new { @class = "selectpicker",
@multiple = "multiple" })*@
<div class="form-group">
<input type="submit" value="Save" class="btn btn-default" />
</div>
对于您的问题,您需要为所选的CCusers
定义新属性,而不是直接将CCusers
绑定到asp For
@page
@model CoreRazor.Pages.EditModel
@{
ViewData["Title"] = "Edit";
}
<h2>Edit</h2>
<form method="post">
<select asp-for="@Model.SelectedCCuserIds" asp-items="@Model.CCusers"
multiple="multiple" class="selectpicker"> </select>
@*@Html.DropDownList("NewSelect", Model.CCusers, new { @class = "selectpicker",
@multiple = "multiple" })*@
<div class="form-group">
<input type="submit" value="Save" class="btn btn-default" />
</div>
您可以参考以下代码:
@page
@model CoreRazor.Pages.EditModel
@{
ViewData["Title"] = "Edit";
}
<h2>Edit</h2>
<form method="post">
<select asp-for="@Model.SelectedCCuserIds" asp-items="@Model.CCusers"
multiple="multiple" class="selectpicker"> </select>
@*@Html.DropDownList("NewSelect", Model.CCusers, new { @class = "selectpicker",
@multiple = "multiple" })*@
<div class="form-group">
<input type="submit" value="Save" class="btn btn-default" />
</div>
页面
public class EditModel : PageModel
{
[BindProperty]
public int[] SelectedCCuserIds { get; set; }
[BindProperty]
public List<SelectListItem> CCusers { get; set; }
public void OnGet()
{
SelectedCCuserIds = new int[] { 1, 2 };
CCusers = new List<SelectListItem>() {
new SelectListItem() { Value = "1", Text = "HR" },
new SelectListItem() { Value = "2", Text = "IT" },
new SelectListItem() { Value = "3", Text = "Account" },
};
}
public IActionResult OnPost()
{
var result = SelectedCCuserIds;
return RedirectToAction("OnGet");
}
}
@page
@model CoreRazor.Pages.EditModel
@{
ViewData["Title"] = "Edit";
}
<h2>Edit</h2>
<form method="post">
<select asp-for="@Model.SelectedCCuserIds" asp-items="@Model.CCusers"
multiple="multiple" class="selectpicker"> </select>
@*@Html.DropDownList("NewSelect", Model.CCusers, new { @class = "selectpicker",
@multiple = "multiple" })*@
<div class="form-group">
<input type="submit" value="Save" class="btn btn-default" />
</div>
公共类EditModel:PageModel
{
[BindProperty]
public int[]selectedCCUserID{get;set;}
[BindProperty]
公共列表ccuser{get;set;}
公共互联网
{
SelectedCCuserIds=newint[]{1,2};
CCusers=新列表(){
新建SelectListItem(){Value=“1”,Text=“HR”},
新建SelectListItem(){Value=“2”,Text=“IT”},
新建SelectListItem(){Value=“3”,Text=“Account”},
};
}
public IActionResult OnPost()
{
var结果=选择的CCUserID;
返回重定向到操作(“OnGet”);
}
}
看法
@page
@model CoreRazor.Pages.EditModel
@{
ViewData["Title"] = "Edit";
}
<h2>Edit</h2>
<form method="post">
<select asp-for="@Model.SelectedCCuserIds" asp-items="@Model.CCusers"
multiple="multiple" class="selectpicker"> </select>
@*@Html.DropDownList("NewSelect", Model.CCusers, new { @class = "selectpicker",
@multiple = "multiple" })*@
<div class="form-group">
<input type="submit" value="Save" class="btn btn-default" />
</div>
@page
@模型CoreRazor.Pages.EditModel
@{
ViewData[“标题”]=“编辑”;
}
编辑
@*@DropDownList(“NewSelect”,Model.CCusers,new{@class=“selectpicker”,
@multiple=“multiple”})*@
您可能需要为
属性使用asp。请参阅“谢谢”,我已经使用过它。在上面的链接中,它类似于asp for=“@Model.CCuserIds”
——有关更多详细信息,请参阅上面链接中的多个选择部分。
@page
@model CoreRazor.Pages.EditModel
@{
ViewData["Title"] = "Edit";
}
<h2>Edit</h2>
<form method="post">
<select asp-for="@Model.SelectedCCuserIds" asp-items="@Model.CCusers"
multiple="multiple" class="selectpicker"> </select>
@*@Html.DropDownList("NewSelect", Model.CCusers, new { @class = "selectpicker",
@multiple = "multiple" })*@
<div class="form-group">
<input type="submit" value="Save" class="btn btn-default" />
</div>