无法正确地将表格行中的文本框的值从视图传递到MVC5中的控制器
我正尝试使用actionlink将3个值从视图发送到另一个操作。我有一张桌子。每行有3列,包括ID,名称和出价金额,这是一个文本框。问题是只传递第一行文本框的值的动作链接,假设我按下第二行的动作链接,它传递第二行的名称和标识,但文本框中的出价钱,正在经过第一排。无法正确地将表格行中的文本框的值从视图传递到MVC5中的控制器
我的视图代码:
@model List<UdemyMVC.Models.Movies> @{
ViewBag.Title = "Index";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<h2>Index</h2>
<table class="table table-striped table-bordered table-hover">
<thead>
<tr class="danger">
<th>
Id
</th>
<th>
Name
</th>
<th>
Bid Money
</th>
</tr>
</thead>
<tbody>
@foreach (var movie in Model)
{
<tr>
<td>
@movie.Id
</td>
<td>
@movie.MovieName
</td>
<td>
<input type="text" id="bidMoney" name="bidMoney"/>
</td>
<td>
@Html.ActionLink("Details", "Details", "Test", new { Id =movie.Id, MovieName = movie.MovieName }, new { onclick = "this.href += '&biddingMoney=' + document.getElementById('bidMoney').value;", @class = "btn btn-primary" })
</td>
</tr>
}
</tbody>
</table>
回答:
我想你应该添加一个索引来bidMony的ID,并使用该指数作为你想要的一个参考。我的剃须刀现在
完全生锈,但申报的指数
@{ int i = 0} @foreach (var movie in Model)
{
<tr>
<td>
@movie.Id
</td>
<td>
@movie.MovieName
</td>
<td>
<input type="text" id="[email protected](i)" name="bidMoney" />
</td>
<td>
@Html.ActionLink("Details", "Details", "Test", new { Id =movie.Id, MovieName = movie.MovieName }, new { onclick = string.Format("alert(document.getElementById('bidMoney{0}').value);",i), @class = "btn btn-primary" })
</td>
</tr>
i++;
}
我无法测试这一点,但我认为这是你需要做什么。问题在于你是getelementbyid看到一堆bidMoney元素,但只能返回一个,所以它给你第一个。
以上是 无法正确地将表格行中的文本框的值从视图传递到MVC5中的控制器 的全部内容, 来源链接: utcz.com/qa/266957.html