具有多个下拉列表的MVC4 Ajax表单回发设置选择相等

时间:2013-09-02 10:28:54

标签: c# jquery asp.net ajax asp.net-mvc-4

我在智慧结束时,需要一些指针去寻找。

我有一个MVC Ajax表单如下:

<div id="totalPartial">
    <table>
        @foreach (Application application in Model.Applications)
        {
            <tr>
                <td>
                    @Html.DisplayFor(m => application.Candidate.Client.ClientName)
                </td>
                <td>
                    @Html.DisplayFor(m => application.Candidate.FirstName)
                </td>
                <td>
                    @Html.DisplayFor(m => application.Test.TestName)
                </td>
                <td>
                    @{ Model.SelectedSession = application.Session; }
                    @using (Ajax.BeginForm("Plan", "Keuring",
                                           new AjaxOptions
                                               {
                                                   InsertionMode = InsertionMode.Replace,
                                                   UpdateTargetId = "totalPartial",
                                                   HttpMethod = "POST"
                                               },
                                           new {id = "form" + application.Id, name = "form" + application.Id}))
                    {
                        @Html.HiddenFor(m => application.Id)
                        @Html.DropDownListFor(m => application.Session.Id, Model.SessionsInclNotPlanned, new {@class = "sessiondropdown", onchange = "$(this.form).submit()"})
                    }
                </td>
            </tr>
        }        
    </table>
</div>

每次在迭代时添加表行时,都会生成一个下拉列表,并选择相关的会话。作为魅力 - 最初加载时。

当用户选择不同的会话时,会有一个ajax调用来替换当前表(因此更新totalPartial)。与捕获一起使用。 在此回发中,所有下拉框中的选定值与所选下的值相同(它们应保留自己的值)。所选值在方法中有效设置:

@{ Model.SelectedSession = application.Session; }
   Model.SessionsInclNotPlanned

完全重新加载 - 它再次作为魅力。就在这个Ajax-回发中,启动选择会在所有列表框中传播......

在哪里看?我检查了fiddler,并且Ajax请求的返回在浏览器中显示(错误地),因此错误发生在服务器端。仍然 - 当我调试列表框中的输入时,它会正确读取。

0 个答案:

没有答案