【发布时间】:2016-07-15 14:59:58
【问题描述】:
各位开发者您好,
我的 ajax 调用有问题,在从我的 Action 成功检索数据后,jQuery html() 函数没有正确地将 html 替换为更新的 html 内容(内容是基于 partialView 的 DevExpress 图表,只有里面的图表。
脚本运行良好,但在开发过程中突然图表不再更新。这是我的代码。
Changes.cshtml
<script type="text/javascript">
function OnSelectTimescale(s, e){
var chartname = s.uniqueID.split("TimescaleMenu").join("");
var actionname = chartname + "PartialChart";
var url = "/Home/" + actionname + "/";
var container = actionname + "Container";
var chartContainer = actionname + "_IMG";
$.ajax({
type: "POST",
url: url,
data: { timescale: e.item.name },
beforeSend: function () {
console.log(chartname);
console.log(actionname);
console.log(url);
console.log(container);
console.log(chartContainer);
LoadingPanel.ShowInElementByID(chartContainer);
},
success: function (response) {
LoadingPanel.Hide();
$(container).html(response);
}
});
}
</script>
<div id="AnimalChangedByPartialChartContainer">
<div id="AnimalChangedByPartialChart" onmousemove="ASPx.chartMouseMove(event, 'AnimalChangedByPartialChart')" onclick="ASPx.chartClick(event, 'AnimalChangedByPartialChart')" style="height:300px;width:500px;">
<img id="AnimalChangedByPartialChart_IMG" src="/DXB.axd?DXCache=eb3eda3a-8a56-485e-a825-715239856987" alt="The ANIMAL_HISTORY chart showing XML inlees module (PDA2RUMA) series, CRV RsReproduction series, LNV Verblijfplaatsen ophalen series, LNV Verblijfplaatsen correctie series." />
</div>
</div>
</div>
请求的 url 是正确的,我已经测试过了,在网络控制台中我可以看到基于新选择的时间刻度生成的图表的图像。
"LoadingPanel.Hide();"是正确执行的最后一行代码。
有谁知道原因
$container.html(响应);
没有正确替换我当前的元素?
【问题讨论】:
-
你能检查一下你的浏览器控制台吗?我假设它将容器视为 HTML 元素而不是 Id。
标签: javascript c# jquery ajax devexpress