0
我有一個下拉列表,用作記錄導航控件 - 從下拉列表中選擇一個值應該「跳轉到」該記錄。我覺得在這之前我做過這樣的事情,但我無法讓這個工作。這個問題似乎是我無法通過下拉列表來更改頁面最初被調用的ID路由值。假設我的網頁是從以下網址調用的:MVC4:從下拉列表選擇動態更改路由值
/PatientProfile/Services/12
12是此處的ID路由值 - 這基本上是顯示的初始記錄。這工作。然而,當我選擇我的下拉的東西,它會重定向到這樣的事情:
/PatientProfile/Services/12?ID=7
注意12如何仍然存在於路線值ID。從下拉列表中選擇ID 7,但它作爲新參數而不是路由值附加到URL。我希望發生是這樣的:
/PatientProfile/Services/7
這裏的剃鬚刀是什麼樣子的我的下拉:
@using (Html.BeginForm("Services", "PatientProfile", FormMethod.Get))
{
@Html.Label("ID", "View Profile:")
@Html.DropDownListFor(model => model.CurrentProfile.ID, ViewBag.ProfileID as SelectList, new { onchange = "this.form.submit();" })
}
我都嘗試Html.DropDownList和Html.DropDownListFor,但看到在行爲上沒有區別。
任何幫助非常感謝。
感謝您的回覆。我在此期間解決了根本沒有使用路由值(而是使用簡單的查詢字符串參數 - 就像我使用傳統的ASP)。 –