How do I update a model value in JavaScript in a Razor view?

asp.net-mvc, asp.net-mvc-3, javascript, razor

Solution

This should work

function updatePostID(val)
{
    document.getElementById('PostID').value = val;

    //and probably call document.forms[0].submit();
}

Then have a hidden field or other control for the `PostID`

@Html.Hidden("PostID", Model.addcomment.PostID)
//OR
@Html.HiddenFor(model => model.addcomment.PostID)

Problem

I want to update model value in JavaScript as below but it is not working. ``` function updatePostID(val) { @Model.addcomment.PostID = val; } ``` in Razor view as shown below ``` foreach(var post in Model.Post) { <br/> <b>Posted by :</b> @post.Username <br/> <span>@post.Content</span> <br/> if(Model.loginuser == Model.username) { @Html.TextAreaFor(model => model.addcomment.Content) <button type="submit" onclick="updatePostID('@post.PostID');">Add Comment </button> } } ``` Can anyone tell me how to assign model value in JavaScript?

Original source