当我需要从视图中获取未绑定到模型的字符串或复选框值时,我只是将其作为参数添加到我的控制器中的POST方法操作,该控制器具有相同的名称和视图形式的id html属性部分。
HTML:
<input type="text" name="customValue" id="customValue">
控制器:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "Title,Content")] Post post, string customValue)
{
.....
}
工作正常。
最近我想用选择列表尝试同样的事情......但我无法弄清楚如何将其转换为控制器动作。有关将选择列表数据传递给控制器的所有示例都需要强类型对象。我想在客户端使用javascript创建我的选择列表。
让我说我在我的表格html中有这个选择列表:
<select multiple name="myCustomSelectedCars" id="myCustomSelectedCars">
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="opel">Opel</option>
<option value="audi">Audi</option>
</select>
我会用javascript在动态客户端玩选项。 那我怎么能把它拿到我的控制器上呢?
我做不了类似的事情:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "Title,Content")] Post post, SelectList myCustomSelectedCars)
{
PS: 我想要做的是键/值对,没有模型绑定。选择列表似乎微不足道,但我愿意接受建议。