0

インデックスビューとCreatedialogビューの2つのビューがあります。インデックスビューのコードは次のとおりです。

<p>Search For: &nbsp;</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>      
}

次に、createdialogビューからインデックスダイアログビューに会社IDの値を送信し、選択リンクをクリックしたときにテキストボックスにcompanyNameを表示します。提案をしてください...ありがとう。

4

2 に答える 2

1

あなたの見解では、次のようなものが得られるはずです:

それ以外の

<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);
}

幸運を :)

于 2012-07-05T11:18:45.307 に答える
0

MVCでは、あるビューから別のビューに「値を送信」することはありません。代わりに、ビューからコントローラーアクションにデータを送信してから、別のビューを表示します。

あなたが持っているものは近いですが、コントローラーでやりたいことは、次の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);
}
于 2012-07-04T10:41:43.343 に答える