我有一个ASP.NET MVC3项目进行ajax调用,返回我可以成功注入页面的HTML。但是在注入代码后隐藏CSS类时遇到问题。我怀疑DOM还没准备好。
我知道文档就绪函数 $(function(){...} 仅在最初加载页面时被调用 - 而且我不想再次调用它 - 所以我想知道是否有另一种方法可以在ajax调用之后使用,以确定DOM何时就绪。
这是ajax代码:
$.ajax(
{
url: '/seoreports/seoupdate',
type: "post",
dataType: "html",
data: JSON.stringify(dt),
contentType: "application/json; charset=utf-8",
success: function (result) {
$('#seolist').html(result);
if (ptshow == false) { $('.seo-pt').hide(); }
}
});
这个想法是,如果 ptshow 变量为false,它会在注入HTML后隐藏所有带有 seo-pt 类的div。
我确实尝试过,仅仅是为了测试,在成功函数中放置 alert('hello world'); ,但这没有用,所以可能有一些我不了解的事情成功的功能。
答案 0 :(得分:0)
成功功能是您的代码的正确位置。如果没有更多代码可供查看,很难说出您的通话失败的原因。此外,您还应该为错误函数添加处理程序,这可能会告诉您警报未被命中的原因。
答案 1 :(得分:0)
$.ajax({
url: '/seoreports/seoupdate',
type: "POST",
async:false,
...
...
试试这个....一切都会等待电话的完成,但在你的情况下可能没问题,你可以更好地控制下一步发生的事情