无法正确地将表格行中的文本框的值从视图传递到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

回到顶部