0

I have a dropdownlist like this:

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))

When a user choose “else” , one textbox appears and user can type it’s country on textbox, I did this by jquery :

@Html.TextBox ("txtCountry",null,new {@id="txtCountry"})

I want to define a variable to get Country from user and send to database. Filed’s name in Model is “Country”</p>

How do this?

4

1 回答 1

1

You can get the list of form controls values using FormCollection Class. Try the below option

Note : Your controls should have have names (just having an id is not returning values in the 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();
}
于 2013-10-12T09:27:57.443 回答