请求主体为什么是空的?

请求主体为什么是空的?

问题描述:

我有一个简单的搜索,像这样:请求主体为什么是空的?

@using (Html.BeginForm()) 
{ 
    <select id="myList" style="width: 50%"> 
     @for(int i = 0; i < 10; i++) 
     { 
      <option value="@i">Item @i</option> 
     } 
    </select> 

    <input type="submit" /> 
} 

以及相应的行动

public ActionResult Index() 
{ 
    return View(); 
} 

[HttpPost] 
public ActionResult Index(int? myList) 
{ 
    Debugger.Break(); 

    return View(); 
} 

当我点击提交按钮,不过,请求主体,如在检查人员(如Firebug)和Fiddler,以及Index操作的参数myList所报告的内容为空。

这是为什么?

给选择元素一个name属性。

<select id="myList" name="myList" style="width: 50%"> 
+0

哦,是的。我只记得你在输入你的答案。 –

+0

如果我还想同时传递用户输入的文本(他可能不会从列表中选择,我正在使用小部件)以及值? –

+0

@ WaterCoolerv2确保他输入的文本框也有一个名字,你可以通过在Chrome中使用inspect html来弄清楚。 –