Javascript 将复选框列表从表单发布到操作
我是网络新手。这是我的Javascript 将复选框列表从表单发布到操作,javascript,jquery,html,asp.net-mvc,checkbox,Javascript,Jquery,Html,Asp.net Mvc,Checkbox,我是网络新手。这是我的html: <div class="modal fade" id="EditDocumentModal"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close"
html
:
<div class="modal fade" id="EditDocumentModal">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title">Edit Vacation Types</h4>
</div>
<div class="modal-body">
<form action=@Url.Action(MVC.Admin.Admin.EditFile()) method="post" enctype="multipart/form-data" class="edit-file-form" id="Edit-File-Form">
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default close-edit-document-button" data-dismiss="modal">Close</button>
<button type="button" form="Edit-File-Form" id="edit-Document-submit" class="btn btn-primary">Save changes</button>
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div><!-- /.modal -->
如您所见,在上单击
编辑文件链接
我从操作
中获取复选框,并在引导模式窗口中绘制它们。这部分很好用。现在我需要将此复选框张贴到我的操作中。这是我的行动:
[HttpPost]
public virtual ActionResult EditFile(Guid documentId, List<VacationTypeViewModel> checkboxList)
{
throw new NotImplementedException();
}
[HttpPost]
公共虚拟操作结果编辑文件(Guid documentId,列表复选框列表)
{
抛出新的NotImplementedException();
}
所以,我发的很好。但是我不知道如何处理引导模式窗口上的复选框。首先,您根本没有命名复选框,因此它们的值永远不会被发布。更新复选框创建代码以添加属性。同样,您还需要为每个复选框包含一个value=“
属性,该属性与您想要回发的id类似
其次,从复选框中返回的唯一内容是您分配的值,而不是您开始使用的完整的VacationTypeViewModel
。因此,您的操作参数应该类似于列表checkboxList
。如果您需要处理由回发的Id表示的实际实例,则需要根据post操作中已发布的INT列表从数据库中重新查询它们。只获取选中复选框的Id是可以的。谢谢,我会添加名称和值,但我不明白我应该放什么逻辑。你能给我举个例子吗?谢谢,什么逻辑?只要它们被命名为checkboxList[]
,每个都有一个实际值要回发,并且您有一个像List checkboxList
这样的操作参数,那么所发布的值将通过checkboxList
在您的操作中可用。你不必做任何其他事,我是说,我把你说的话放进去了。如何从该复选框收集数据并发布?谢谢你抽出时间。
[HttpPost]
public virtual ActionResult EditFile(Guid documentId, List<VacationTypeViewModel> checkboxList)
{
throw new NotImplementedException();
}