我嘗試了幾種方法,但由于我是 ASP.NET Core 中 Razor Pages 的新手,所以我被阻止了。有人可以幫我嗎?這一定是微不足道的,但我用谷歌搜索了很多,但找不到合適的方法。我不想使用 jquery 或任何其他 javascript 庫。
以下是相關代碼:
<form method="post">
<table>
<thead>
<tr>
<th>
Text 1
</th>
<th>
Text 2
</th>
<th>
Text 3
</th>
</tr>
</thead>
<tbody>
@foreach(var item in Model.GridRows)
{
<tr>
<td>
<input type="hidden" asp-for="@item.Id" />
</td>
<td>
@Html.EditorFor(modelItem => item.Text1)
</td>
<td>
@Html.EditorFor(modelItem => item.Text2)
</td>
<td>
@Html.EditorFor(modelItem => item.Text3)
</td>
<td>
<input type="submit" value="Save" class="btn btn-primary"/>
</td>
</tr>
}
</tbody>
</table>
</form>
public async Task<IActionResult> OnPostAsync(int id)
{
if (!ModelState.IsValid)
{
return Page();
}
var gridRowUpdate = await _context.GridRows.FindAsync(id);
if (gridRowUpdate == null)
{
return NotFound();
}
if(await TryUpdateModelAsync<GridRow>(gridRowUpdate, "GridRow", g => g.Text1, g => g.Text2, g => g.Text3))
{
await _context.SaveChangesAsync();
}
return RedirectToPage("./Index");
}
uj5u.com熱心網友回復:
如果您想單擊每個save按鈕以發送該行的 Id,您可以按照下面的簡單演示進行操作,無需任何 jquery 或任何其他 javascript 庫。
<table>
<thead>
<tr>
<th>
Text 1
</th>
<th>
Text 2
</th>
<th>
Text 3
</th>
</tr>
</thead>
<tbody>
@foreach(var item in Model.test)
{
<form method="post" >
<tr>
<td>
<input type="hidden" name="Id" value="@item.Id" />
</td>
<td>
@Html.EditorFor(modelItem => item.Text1)
</td>
<td>
@Html.EditorFor(modelItem => item.Text2)
</td>
<td>
@Html.EditorFor(modelItem => item.Text3)
</td>
<td>
<input type="submit" value="Save" class="btn btn-primary"/>
</td>
</tr>
</form>
}
</tbody>
</table>
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/497157.html
上一篇:修復多個div中的可拖動位置
