If you want to get the value from a form post, MVC will automatically bind it to any parameters that match the name of the property. So if you form posted to the action MyPost it would look like this:
public ActionResult MyPost(string UserName) { //Not case sensitive, you can do userName as well
var a = UserName;
}
If you have lots of fields to post, you might want to use a request object. MVC will automatically bind properties with the same name.
public class MyRequest {
public string UserName { get; set; }
}
public ActionResult MyPost(MyRequest request)
UserName would be populated on the post.
If you wanted to pull out the values using javascript, you would probably want to put an id on the html like so:
Html.TextBoxFor(m => m.UserName, new { @class = "flat", id = "my-textbox" })
Then you could use jquery or whatever you like to select the element with that name, assuming you wanted just that property and would not be enumerating a bunch of form fields.