我有一个通过AJAX将内部html更新为<div>
的函数。在IE 11和Chrome中一切正常,如果我在函数内部有alert()
,那么按下此按钮会调用该函数,一切正常。如果我删除了alert()
,则该功能似乎根本没有被调用。
我可以告诉它,因为它在工作时显示了一个加载gif,并且在函数内部没有alert()
的情况下根本没有显示gif(即使是一秒)。此外,它在没有alert()
的情况下工作,如果我打开了开发人员工具控制台。我正在读取控制台的使用可能导致这一点,但我已经搜索了控制台的一切,我没有看到它。我不记得自己也在使用它。我在这个项目中只有bootstrap,jQuery和index.js文件。
任何想法为何奇怪的行为?另外,我在这个页面上有其他AJAX调用,一切正常。我能看到的唯一区别是那些AJAX调用不在我创建的函数中,而只是$(function() {})
的一部分。当我输入这个时,我注意到我有另一个功能,用于删除此网格中不起作用的行,它也在我创建的函数中。这些是我职能部门中唯一的2个,而不是$(function() {})
的一部分。
function UpdateGrid() {
// show the refresh gif
$("#gridLoader").html("<img id='loader' src='/Content/ajax-loader.gif' style='margin-top: 25px;' />");
//alert("test");
// because this is in a javascript file we needed a way to get the url from a friendly C# way and using the data-* attributes provides this for us
$.ajax({
url: $("#divGrid").data("request-url"),
type: "GET"
}).done(function (viewResults) {
// update the results
$("#divGrid").html(viewResults);
// remove the gif loader once we got our data back
$("#loader").remove();
});
}