这是我的控制器:
namespace OBBMS.Controllers
{
public class BDMController : Controller
{
public ActionResult Index()
{
OBBMS.Models.User objUser = new Models.User();
objUser.lstUser = DB_Interactions.BDMGetUsers("Pending");
return View(objUser);
}
[HttpPost]
public ActionResult Index(OBBMS.Models.User objUser)
{
return View();
}
}
}
以下是查看代码:
@model OBBMS.Models.User
@{
ViewBag.Title = "Index";
Layout = "~/Views/Shared/_LayoutBloodDonationManagement.cshtml";
}
@using (Html.BeginForm("Index", "BDM", FormMethod.Post, new {id = "BDM"}))
{
<table id="mytable" class="table table-bordred table-striped">
<thead>
<tr>
@*<th>Post ID</th>*@
<th>Full Name</th>
<th>Blood Group</th>
<th>Email Address</th>
<th>Contact No</th>
<th>Address</th>
<th>Post Title</th>
</tr>
</thead>
<tbody>
@foreach(var obj in Model.lstUser)
{
<tr>
<td style="display:none!important;">@obj.PostID</td>
<td>@obj.FullName</td>
<td>@obj.BloodGroupName</td>
<td>@obj.EmailAddress</td>
<td>@obj.ContactNo</td>
<td>@obj.Address</td>
<td>@obj.PostTitle</td>
<td><input type="submit" value="Approve" class="btn btn-primary btn-xs" data-title="Approved" data-toggle="modal" data-target="#edit" /></td>
</tr>
}
</tbody></table>}
我在每一行的末尾有一个提交按钮,我需要获得用户对象的单个实例,而不是在HttpPost ActionResult方法中的完整列表,当特定的行按钮被单击时。我只需要获取对象,只需单击行按钮即可。
如果可能的话:我不想使用任何JavaScript/jQuery/Ajax,所有的事情都应该在APS.NET MVC框架中完成。
如果不可能:建议我做这件事的最好和最简单的方法。
发布于 2018-10-13 04:15:02
一种可能的解决方案是使用HTML 5 form attribute。该属性可用于指示元素属于哪种形式。例如:
@foreach(var obj in Model.lstUser)
{
<tr>
<td><form id="@("form"+obj.PostID)"><input type="hidden" name="id" value="@obj.PostID" /></form></td>
<td><input form="@("form"+obj.PostID)" type="text" name="FullName" value="@obj.FullName" /></td>
<td><input form="@("form"+obj.PostID)" type="text" name="BloodGroupName" value="@obj.BloodGroupName" /></td>
<-- more td elements here -->
<td><input form="@("form"+obj.PostID)" type="submit" value="Approve" class="btn btn-primary btn-xs" data-title="Approved" data-toggle="modal" data-target="#edit" /></td>
</tr>
}
有关支持的浏览器的列表,请查看here。
https://stackoverflow.com/questions/52566487
复制相似问题