提前为这个问题道歉,但尽管我在这里找到了很多建议,但没有一个对我有用。我感觉很疯狂,所以...
我有一个 MVC 3 应用程序,当它第一次加载时,它会为所有用户显示带有模型数据的表。那部分工作正常。我有两个文本框,一个用于帐户 ID,另一个用于用户,允许我重新查询数据库以获取更具体的用户数据。当我使用提交按钮时,我会取回数据,但整个页面会刷新,当我用正确的数据取回表单和表格时,页面的其余部分是白色的。我以前没有任何图形或任何东西。另一个有趣的事情是,如果我再次从白页提交表单,使用任何有效参数,AJAX 都可以工作。我很困惑。
表格如下所示:
@using (Ajax.BeginForm("TaskList", "Dispatch",
new AjaxOptions { HttpMethod = "POST", UpdateTargetId = "tblBody",
InsertionMode = InsertionMode.Replace }, new { id = "frmTaskList" }))
{
<table id="tblTaskList" class="tblTaskList">
<thead>
<tr>
<th>Ticket ID</th>
<th>Date</th>
<th>Customer Name</th>
</tr>
</thead>
<tbody id="tblBody" class="tblBody">
@{for (var ix = 0; ix < Model.Value.Count - 1; ix++)
{
<tr id="@(Model.Value[ix].TicketId)">
<td>@Model.Value[ix].TicketId</td>
<td>@Model.Value[ix].Created</td>
<td>@Model.Value[ix].ContactName</td>
</tr>
}}
</tbody>
</table>
<input type="text" id="hidAccId" name="hidAccId" value="" />
<input type="text" id="hidUserId" name="hidUserId" value="" />
<input type="submit" id="btnTaskList" value="Submit" />
}
还有我正在使用的脚本,放在页面顶部:
<script src="../../Scripts/jquery-ui-1.8.11.min.js" type="text/javascript"></script>
<script src="../../Scripts/jquery-1.7.2.min.js" type="text/javascript"></script>
<script src="../../Scripts/jquery.unobtrusive-ajax.js" type="text/javascript"></script>
旁注:我尝试使用 @Url.Content 而不是 src 属性无济于事。我也尝试过使用以下方法,同样没有不同的结果:
<script src="@Url.Content("~/Scripts/MicrosoftAjax.js")" type="text/javascript"> </script>
<script src="@Url.Content("~/Scripts/MicrosoftMvcAjax.js")" type="text/javascript"></script>