【发布时间】:2021-01-14 21:48:28
【问题描述】:
所以我有以下代码:
$("#wifi").load("myurl .learn-press-course-results-progress", function(response, status, xhr) {
if (status == "success") {
$('#wifi_header').show();
console.log("wifi");
};
});
这基本上是试图获取学生在给定的 learnpress 课程中的进度,并且,如果有任何进展(即,如果学生注册了该课程),它会显示课程标题(以及它的进度)他们的仪表板,以便他们可以轻松地继续他们的课程,如下所示:
但是,status 条件的原因,如果学生没有注册,那么 div .learn-press-course-results-progress 不存在,因此我不希望显示课程标题(即,我想要“什么都没有“发生”。)
问题是,即使有成功的条件,也会发生这种情况:
现在有趣的是,我嵌套了 console.log("class") 以查看发生了什么,事实证明,在每个实例中,包括那些加载失败因此它不应该显示标题的实例,我得到了我的控制台中的课程日志。
所以,我的问题是,我该如何解决这个问题?这和状态有关系吗?
编辑:在这个代码块之前,我已经完成了$("#class_header").hide();,这就是我运行show()的原因。
谢谢!
【问题讨论】:
-
没有通过 jQuery 找到选择器通常不会被认为是任何类型的错误。
-
问题是,根据 jquery 文档,如果选择器不存在且 AJAX 请求存在错误。
-
我在
.load()文档(“加载页面片段”部分)的任何地方都没有看到。
标签: javascript jquery jquery-ui