我有两个视图,即Index视图和Createdialog视图。 索引视图的代码是:
<p>Search For: </p>
@Html.TextBox("companyName", Model);
和Createdialog视图的代码是:
@foreach(var item in Model.branch)
{
<tr>
<td><a href="#">
@Html.DisplayFor(itemModel => item.companyName)
</a></td>
<td>@Html.DisplayFor(itemModel => item.branchName)</td>
<td>@Html.DisplayFor(itemModel => item.address)</td>
<td>
@Html.ActionLink("Delete", "Delete", new { id = item.branchId })
@Html.ActionLink("Select", "Index", new { id = item.companyName })
</td>
</tr>
}
现在我要做的是,将公司ID的值从createdialog视图发送到索引对话框视图,并在单击选择链接时在文本框中显示companyName。提供建议......谢谢。
答案 0 :(得分:0)
您不会在MVC中从一个视图“发送值”到另一个视图。相反,您将从View向Controller操作发送数据,然后显示另一个View。
你所拥有的是近在咫尺,但你想在Controller中做的是接受companyName
作为输入参数,如下所示:
[HttpGet]
public ActionResult Index(string id)
{
// Perform any initialization or other operations
// Show the Index view with the id (the companyName) as the Model
return View("Index", id);
}
答案 1 :(得分:0)
在你看来你应该得到这样的东西:
而不是
<td><a href="#">
@Html.DisplayFor(itemModel => item.companyName)
</a></td>
使用
@Html.ActionLink(item.companyName, "Index", new { name = item.companyName })
使用
在控制器中捕获它[HttpGet]
public ActionResult Index(string name)
{
return View("Index", name);
}
祝你好运:)