2015-02-05 63 views
0

我有下面的下拉列表,如何在點擊提交按鈕(httppost)時在MVC控制器上檢索下拉選擇的下拉文本(不是值)?傳遞下拉文本到控制器

<select id="detailThing" name="MyList"> 
<option value="BMI">ListDetail1</option> 
<option value="BMI">ListDetail2</option> 
<option value="BMI">ListDetail3</option> 
</select> 
+0

是有辦法做到這一點不改變的價值呢?我需要按照原始問題保留價值... – user3663854 2015-02-05 15:24:38

回答

0

<select>放在表單中並提交給控制器。你將需要一個帶有字符串變量的模型來將值傳遞給/ through。

public class MyModel 
{ 
    public String myValue { get; set; } 
} 

在視圖中將此行放在頂部;

@model MyProject.Models.MyModel 

然後創建一個html表單,並將您的選擇內置並創建一個提交按鈕;

@using (Html.BeginForm("MyControllerMethod", "MyController", FormMethod.Post, new { id = "myform" })) 
{ 
    <select id="detailThing" name="myValue"> 
     <option value="BMI">Putrajaya</option> 
     <option value="BMI">Sepang</option> 
     <option value="BMI">Hulu Langat</option> 
    </select> 
    <button type="submit">Submit</button> 
} 

的選擇的「姓名」設定爲'myValue'將其「選中的」值鏈接到所述可變的模型和提交表單時將它傳遞給控制器​​。希望這可以幫助!

更新:

變化的值是一樣的顯示文字,

<select id="detailThing" name="myValue"> 
    <option value="Putrajaya">Putrajaya</option> 
    <option value="Sepang">Sepang</option> 
    <option value="Hulu Langat">Hulu Langat</option> 
</select> 
+0

它會返回下拉值還是下拉文本?因爲我需要下拉文本... – user3663854 2015-02-05 14:05:29

+0

它會返回值不是可見文本。只需將選項值更改爲與顯示文本相同即可。 – Whiplash450 2015-02-05 14:08:01

+0

我遵循以下代碼http://forums.asp.net/t/1989680.aspx?dropdown+items+filter+based+on+selection+of+another+dropdown+seleted+value+using+jquery,以及現在我有一個具有相同值但文字獨特的下拉菜單。所以,我需要幫助,如何將下拉文本傳回控制器... – user3663854 2015-02-05 14:17:38

相關問題