My problem here is how to send the list values to the controller upon an ajax post. With my actual code, the list is null on post.
My view:
    @using (Html.BeginForm("UsersList", "Project", FormMethod.Post, new { id = "Users" }))
{
     <div id="MyList" >
        <table>
        <thead>
        <tr><th></th><th>User</th><th>End date</th></tr>
        </thead>
    @Html.EditorFor(x => x.GetUsers)
       </table>
           </div> 
       <script type="text/javascript">
        $(function () {
            $('#MyList).dialog({
                autoOpen: false,
                width: 820,
                buttons: {
                    "Save": function () {
                        $("#Users").submit();
                    },
                    "Cancel": function () {
                        $(this).dialog("close");
                    }
                }
            });
    </script>
Model:
public class ProjectModel
    {
        public List<ProjectList>GetUsers{get;set;}
        }
  public class ProjectList
    {
        public bool Selected { get; set; }
        public int UserID { get; set; }
}
My controller:
[HttpPo开发者_开发知识库st]
        public ActionResult UsersList(ProjectModel model)
        {
             return View(model);
        }
Sending a list can be difficult. I think MVC 3.0 has (in-built) support for sending JSON to the controller which would make this easier.
However with prior versions I think this article should be what your looking for: http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx
Effectively you give everything in the list the same name in your HTML (as the name will be what gets sent in the key/value string that gets sent and it will bind as a list.
For more complex items you name each object property but add an index to show which object they get attached too:
<form method="post" action="/Home/Create">
<input type="text" name="[0].Title" value="Curious George" />
<input type="text" name="[0].Author" value="H.A. Rey" />
<input type="text" name="[0].DatePublished" value="2/23/1973" />
<input type="text" name="[1].Title" value="Code Complete" />
<input type="text" name="[1].Author" value="Steve McConnell" />
<input type="text" name="[1].DatePublished" value="6/9/2004" />
<input type="text" name="[2].Title" value="The Two Towers" />
<input type="text" name="[2].Author" value="JRR Tolkien" />
<input type="text" name="[2].DatePublished" value="6/1/2005" />
<input type="submit" />
 
         
                                         
                                         
                                         
                                        ![Interactive visualization of a graph in python [closed]](https://www.devze.com/res/2023/04-10/09/92d32fe8c0d22fb96bd6f6e8b7d1f457.gif) 
                                         
                                         
                                         
                                         加载中,请稍侯......
 加载中,请稍侯......
      
精彩评论