【发布时间】:2016-08-09 22:14:08
【问题描述】:
我有一个 Ajax 调用是通过按下按钮返回给我一些数据然后关闭并创建一个网格。第一次调用该函数时,会进行 Ajax 调用,返回数据并显示网格。快乐的时光。 但是,对该函数的任何后续调用(其中未更改任何数据参数)都会导致未对服务器进行 Ajax 调用,并且该函数会直接跳至“成功”,并且已填充成功调用的结果。
更改任何“postParameters”都会导致 Ajax 调用成功并刷新数据。
function btnClick(){
//blah blah
getGridData();
}
function getGridData() {
var postParameters =
{
SiteID: "@Model.SiteID",
DateFilterFrom: $("#datepickerFrom").val(),
DateFilterTo: $("#datepickerTo").val(),
CustomerFilter: $("#customers").val()
};
$.ajax({
url: "@Url.Action("SalesForecast_Read", "Planning")",
type: "GET",
contentType: "application/json; charset=utf-8",
data: postParameters,
dataType: "json",
success: function (results) {
createHighlights(results.Highlights);
createGrid(results.Entries);
},
error: function (e) {
alert(e.responseText);
}
});
};
我知道我一定缺少一个重要的 Javascript 概念,但我似乎无法确定它。 任何人都可以帮助我找到正确的方向吗?
【问题讨论】:
-
我认为这里存在缓存问题。应该有一个选项专门要求在 ajax 查询中不缓存
-
其实就是:
cache: false,
标签: javascript jquery ajax javascript-objects