我有一个这样的下拉列表:
var Country = new List<ListItem>
{
new ListItem { Text = "American" },
new ListItem { Text = "British" } ,
new ListItem { Text = "Spanish" },
new ListItem { Text = "Persian" } ,
new ListItem { Text = "China" },
new ListItem { Text = "else" }
};
@Html.DropDownList("Country", new SelectList(Country))
当用户选择“else”时,会出现一个文本框,用户可以在文本框中键入它的国家/地区,我通过jquery执行此操作:
@Html.TextBox ("txtCountry",null,new {@id="txtCountry"})
我想定义一个变量来从用户获取Country并发送到数据库。 模型中提交的名称是“国家”
这是怎么做到的?
答案 0 :(得分:1)
您可以使用FormCollection类获取表单控件值列表。 请尝试以下选项
注意:你的控件应该有名字(只是id没有在formCollection中返回值)
[HttpPost]
public ActionResult YourActionMethod(FormCollection Collection)
{
string Country = string.Empty;
if (Collection["txtCountry"] != null)
Country = Collection["txtCountry"].ToString();
//Else you can assign the values to your model object.
return View();
}