ASP MVC控制器post相同的html输入名称与不同的值

ASP MVC Controller post same html input name with different values

本文关键字:输入 html post MVC ASP 控制器      更新时间:2023-09-26

我有这个需要克隆的输入类型,示例html如下。

<input type="text"id="person" name="Person" class="person-list" />
<input type="text"id="person" name="Person" class="person-list" />

我想通过MVC获得两个输入的值。下面的代码是我当前的工作,但它只获得第一个输入的值。

[HttpPost]
public ActionResult ConfirmationPage(string Person){
}

你的方法需要是

public ActionResult ConfirmationPage(string[] Person){ // or IEnumerable<string>

然而,你也创建了无效的html,因为重复的id属性,所以你应该从输入中删除这些。

试试这个

[HttpPost]
public ActionResult ConfirmationPage(string[] Person){
}
<input type="text" name="Person" class="person-list" />
<input type="text"  name="Person" class="person-list" />

我想你的问题已经解决了。Stephen Muecke的答案绝对正确。我只想补充一点。

你可以在你的html或视图页面中指定数组元素的索引。

<!-- You are specifying that this input should be Person[0] -->
<input type="text" name="Person[0]" class="person-list" />
<input type="text" name="Person[1]" class="person-list" />
我知道这只是一个小问题,但有时你可以使用这个