In your view, you can use a <input type='hidden' name='lat'/> that you assign the value you need. Note that it must match the name of your controller parameter
@using (Html.BeginForm("Action", "Controller", FormMethod.Post))
{
<p>Latitud: <input size="20" type="text" id="latbox" name="lat"></p>
<input type="hidden" name="lat" id="latbox-hidden" />
<input type="submit" value="submit" />
}
<script type="text/javascript">
var lat = document.getElementById("latbox");
lat.value = "foo";
document.getElementById("latbox-hidden").value = lat.value;
alert(document.getElementById("latbox-hidden").value);
</script>
And your controller:
[HttpPost]
public ActionResult Action(string id, string lat) //same name to bind
{
//do your thing
}