Asp.net mvc 4 复选框未出现在Request.Form(NameValueCollection)中
我在MVC4.0中创建了一个方法,它在表单中接受Request.formnamevalueCollection。我在复选框和单选按钮中遇到了下面的问题 我用下面的代码动态添加了复选框或单选按钮,并将表单值集合设置为NameValueCollection formsCollection=Request。表单位于我的一个控制器方法中,但该复选框或单选按钮不位于formsCollection.AllKeys中,而其他控件(如文本框、文本区域、下拉列表)将正常工作Asp.net mvc 4 复选框未出现在Request.Form(NameValueCollection)中,asp.net-mvc-4,Asp.net Mvc 4,我在MVC4.0中创建了一个方法,它在表单中接受Request.formnamevalueCollection。我在复选框和单选按钮中遇到了下面的问题 我用下面的代码动态添加了复选框或单选按钮,并将表单值集合设置为NameValueCollection formsCollection=Request。表单位于我的一个控制器方法中,但该复选框或单选按钮不位于formsCollection.AllKeys中,而其他控件(如文本框、文本区域、下拉列表)将正常工作 <form> &l
<form>
<div class="divLeft div1" id="div83ac0fad-41d5-40e5-99cd-f99ea8877b04">
<div class="control-group">
<label class="control-label">Checkbox 2</label>
<div class="controls">
<div id="cfCheckbox">
<label>Option 1</label>
<input type="checkbox" id="checkbox83ac0fad-41d5-40e5-99cd-f99ea8877b04" name="checkbox83ac0fad-41d5-40e5-99cd-f99ea8877b04">
<label>Option2</label>
<input type="checkbox" id="checkbox83ac0fad-41d5-40e5-99cd-f99ea8877b04" name="checkbox83ac0fad-41d5-40e5-99cd-f99ea8877b04">
</div>
</div>
</div>
</div>
</form>
在两个复选框和主分区上都有id=checkbox83ac0fad-41d5-40e5-99cd-f99ea8877b04。HTML中的id应该是唯一的
删除复选框上的ID。这会解决你的问题
FormsCollection使用名称进行绑定,而不是ID。因此,您并不需要元素具有ID。删除ID或使其唯一。保持名字相等,这没有意义。两个复选框的名称相同。由于未选中的复选框不会发回,因此您可能无法获得任何内容(无论是未选中的还是重复的)发回,或者只有1个,您如何知道选中了哪一个。学习MVC的基础知识,特别是如何使用视图模型和强类型帮助程序生成正确的html,并在发回时绑定到模型。我从复选框中删除了Id,但仍然没有成功保存它。我为复选框生成唯一Id并分配给它,但请求中仍然没有复选框。Formback代码位于函数void GenerateDetailEntityDetail ED{NameValueCollection formsCollection=Request.Form;var item=from formsCollection.AllKeys select key;}