这是我的 View 页面标记
<%for (int i = 0; i < 3; i++)
{ %>
<%:Html.CheckBox("Test") %>
<%} %>
这是我的 Controller ,我从 formcollection 对象中获取值
public ActionResult CreateTaxMaster(TaxMaster objTaxMaster ,bool [] Test,FormCollection form)
{
string LocalCheckboxValues = string.Empty;
foreach (var key in form.AllKeys)
{
if (key.Contains("Test"))
{
LocalCheckboxValues = LocalCheckboxValues + form.Get(key);
}
}
我尝试了所有三种方法来获得正确的值,但它给了我一些与复选框的选定值不匹配的真假值
如果我选中所有三个复选框,它仍然会给出 formcollection 值 真,假,真,假,真,假
如有任何帮助,我们将不胜感激。 提前致谢。
最佳答案
这是因为选中复选框时传递的值是“true,false”
使用 Contains("true");
你可以检查复选框是否被选中
例如:
bool bChecked = form[key].Contains("true");
关于c# - Html.checkbox 控件表单集合值正在获取一些额外的 true false 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18458186/