0

我在 MVC Razor-View 中有两个下拉菜单:

@Html.DropDownListFor(x => x.SelectedPrefix, Model.GetAssignablePrefixes() , new { @id = "prefixDropDown" }) 
@Html.DropDownListFor(x => x.SelectedSuffix, Model.GetAssignableSuffixes(Model.SelectedPrefix) , new { @id = "suffixDropDown" })

选择第一个下拉菜单应根据第一个下拉菜单中选择的值更改第二个下拉菜单的内容。(因此调用 GetAssignableSuffixes(Model.SelectedPrefix) 方法)

因为有相当复杂的计算,我不想把所有的逻辑都放到一个 JavaScript 方法中

我在 SO 上发现了一些“相当”的类似问题,但在 DropDownListFor 中却没有。有没有办法解决这个问题?

4

1 回答 1

2

DropDownListFor 在页面首次呈现时在服务器上进行评估。您将不得不至少部分在客户端执行此操作。当第一个下拉列表更改时,您可以通过执行 AJAX 调用将计算推送到服务器,然后使用 AJAX 调用返回的结果填充第二个下拉列表。

于 2013-09-04T15:54:27.780 回答