一次从一个表单添加多人,并保存在asp.net核心的一个表中

bvhaajcl  于 2021-09-13  发布在  Java
关注(0)|答案(1)|浏览(274)

当我单击“注册”按钮时,所有人员都应列出并存储在用户表中。
我做了很多研究,他们说你应该在javascript的帮助下收集信息,并将其发送到mvc action方法。我不知道这样做的代码。请告诉我如何使用视图和操作。
请看这张图片

<tbody>
  <form action="/Home/paySalery" method="post">
    @foreach (var item in @Model.ProjectViewModels) {
      <tr>
        <td class="tablehead">@item.PersonName</td>
        <td><input class="" type="text" style="width: 25px" name="workDay" /></td>
        <td><input class="" type="text" style="width: 30px" name="AzafeKaryMinet" /></td>
        <td><input class="" type="text" style="width: 30px" name="mamoriatDay" /></td>
        <!-- ... -->
    </tr>
    }
    <button class="btn btn-success mb-4" type="submit">ثبت حقوق</button>
  </form>
</tbody>
[HttpPost]
public IActionResult paySalery(PaySalery salery) 
{
  PaySalery paySalery = new PaySalery() 
  {
    PersonID = salery.PersonID,
      projectID = salery.projectID,
      hokmID = salery.hokmID,
      // ...
  };
  _context.Add(paySalery);
  _context.SaveChanges();
  return RedirectToAction("allPerson");
}
ukqbszuj

ukqbszuj1#

关键是 name 属性:

<tbody>
    <form action="/Home/PaySalry" method="post">
        @for (var i = 0; i < 3; i++)
        {
            <tr style="display:block;">
                <td class="tablehead"></td>
                <td><input class="" type="text" style="width: 25px" name="[@i].PersonID" /></td>
                <td><input class="" type="text" style="width: 25px" name="[@i].ProjectID" /></td>
                <td><input class="" type="text" style="width: 25px" name="[@i].HokmID" /></td>
                <!-- ... -->
        </tr>
        }
        <button class="btn btn-success mb-4" type="submit">ثبت حقوق</button>
    </form>
</tbody>
[HttpPost]
public IActionResult PaySalary(IEnumerable<PaySalary> salaries)
{
    //
    // do something to salaries
    //
    return RedirectToAction("AllPerson");
}

回购

相关问题