我创建了具有搜索表单的应用程序,下面包含搜索结果。 现在我希望能够添加历史记录,按钮功能。
问题是我陷入了加载页面的不定循环,我不知道为什么,这是在FireFox中。
我已按照本教程操作如何执行此操作:
http://www.asp.net/mvc/tutorials/contact-manager/iteration-7-add-ajax-functionality-cs
我的代码是:
的Javascript
<% =Html.JQuery() %>
<script src="../../../../Scripts/MicrosoftAjax.js" type="text/javascript"></script>
<script src="../../../../Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script>
<script type="text/javascript">
var _currentCaseId = -1;
Sys.Application.add_init(pageInit);
function OnBegin() {
var caseId = $("#SelectDeceased_hidden").val();
Sys.Application.addHistoryPoint({ "caseId": caseId });
$(document).ready(function () {
$("#divTableContainer").html("");
});
}
function OnSuccess() {
$('#divTableContainer').fadeIn('slow');
}
function OnFailure() {
alert("Something went wrong. Try again...");
}
function pageInit() {
// Enable history
Sys.Application.set_enableHistory(true);
// Add Handler for history
Sys.Application.add_navigate(navigate);
}
function navigate(sender, e) {
// Get groupId from address bar
var caseId = e.get_state().caseId;
// if cases does not match
if (_currentCaseId != caseId) {
// assign the case id
_currentCaseId = caseId;
alert(caseId);
$(document).ready(function () {
$.ajax({
url: "/PostItems/UmiTable?currentCase="
+ _currentCaseId
+ "&EntityType=-1",
success: function (data) {
$("#divContactList").text(data);
}
});
});
}
}
和我的HTML
<% using (Ajax.BeginForm("UmiTable", new AjaxOptions() {
OnFailure = "OnFailure",
OnBegin = "OnBegin",
LoadingElementId = "divLoading",
UpdateTargetId = "divTableContainer" })) %>
<% { %>
<% using (Html.MooseFieldWrapper("Find case", "StandardForm"))
{ %>
<%= Html.CutomTextBox("Case") %>
<li class="Button"><input type="submit" value="Go" /></li>
<% } %>
<% } %>
<div id="divLoading">
<div><img src="Indicator.gif" alt="loading data" />Loading</div>
</div>
<div id="divTableContainer"></div>
答案 0 :(得分:0)
最后 我使用jquery历史脚本来管理导航。