ASP.NET CORE Checkbox如何检查是否为真?
ASP.NET CORE Checkbox how to check for true?
当结果为 {false}(未选中)和 {true,false}(已选中)时,如何检查复选框值是否为真?
当我将 value="yes" 添加到助手时,我得到 {yes,false} 进行检查。 {侧边栏:Microsoft 有什么问题他们无法解决这个问题?}
{版本:netcoreapp3.1,Microsoft.EntityFrameworkCore3.1.5,Microsoft.VisualStudio.Web.CodeGeneration.Design3.1.3,VS Enterprise 2019 16.6.3}
查看:
<div class="form-group form-check">
<label class="form-check-label">
<input class="form-check-input" asp-for="MyBoolValue" /> @Html.DisplayNameFor(model => model.MyBoolValue)
</label>
</div>
控制器:(带有 IFormCollection 表单)
if(form["MyBoolValue"].ToString() != "") // Does not work when the value is {false} not checked
{
DbTable.MyBoolValue = true;
}
else
{
DbTable.MyBoolValue = false;
}
我试过很多组合,例如:
if(Convert.ToBoolean(form["MyBoolValue"]) == true)
有人有简单的方法可以从复选框中始终如一地获得真假条件吗?
第二个字段是隐藏字段。无论复选框是否被选中,它都会被提交。如果选中该复选框,则发布的值将为 true、false。否则,张贴值将 false.It 是由设计引起的。
如果你想检查复选框是真还是假,你可以这样做:
控制器:
public IActionResult Test(IFormCollection form) {
string[] str = form["MyBoolValue"].ToArray();
//the first solution
if (str.Length > 1)
{
//MyBoolValue is true
}
else {
//MyBoolValue is false
}
//the second solution
if (str[0].Equals("true"))
{
//MyBoolValue is true
}
else
{
//MyBoolValue is false
}
return View();
}
}
当结果为 {false}(未选中)和 {true,false}(已选中)时,如何检查复选框值是否为真? 当我将 value="yes" 添加到助手时,我得到 {yes,false} 进行检查。 {侧边栏:Microsoft 有什么问题他们无法解决这个问题?}
{版本:netcoreapp3.1,Microsoft.EntityFrameworkCore3.1.5,Microsoft.VisualStudio.Web.CodeGeneration.Design3.1.3,VS Enterprise 2019 16.6.3}
查看:
<div class="form-group form-check">
<label class="form-check-label">
<input class="form-check-input" asp-for="MyBoolValue" /> @Html.DisplayNameFor(model => model.MyBoolValue)
</label>
</div>
控制器:(带有 IFormCollection 表单)
if(form["MyBoolValue"].ToString() != "") // Does not work when the value is {false} not checked
{
DbTable.MyBoolValue = true;
}
else
{
DbTable.MyBoolValue = false;
}
我试过很多组合,例如:
if(Convert.ToBoolean(form["MyBoolValue"]) == true)
有人有简单的方法可以从复选框中始终如一地获得真假条件吗?
第二个字段是隐藏字段。无论复选框是否被选中,它都会被提交。如果选中该复选框,则发布的值将为 true、false。否则,张贴值将 false.It 是由设计引起的。 如果你想检查复选框是真还是假,你可以这样做:
控制器:
public IActionResult Test(IFormCollection form) {
string[] str = form["MyBoolValue"].ToArray();
//the first solution
if (str.Length > 1)
{
//MyBoolValue is true
}
else {
//MyBoolValue is false
}
//the second solution
if (str[0].Equals("true"))
{
//MyBoolValue is true
}
else
{
//MyBoolValue is false
}
return View();
}
}