Javascript document.getElementById和window.ElementId之间的差异?

Javascript document.getElementById和window.ElementId之间的差异?,javascript,jquery,Javascript,Jquery,我可以控制渲染抛出ajax并将其附加到文档中的div: function RevrievePopUpViaAjax(url) { if (document.getElementById('abcd') == null) { var jqxhr = $.ajax({ url: url, type: "GET" }) .done(function (data) {

我可以控制渲染抛出ajax并将其附加到文档中的div:

function RevrievePopUpViaAjax(url) {
     if (document.getElementById('abcd') == null) {
         var jqxhr = $.ajax({
             url: url,
             type: "GET"
         })
         .done(function (data) {
             $("#contentDiv").append(data);

         })
         .fail(function () {
             alert("error");
         })
     }
     else {
         abcd.PerformCallback();
     }
}
这是我第一次调用它时的原始函数,当我第二次调用它时,它会呈现id为'abcd'的控件document.getElementById('abcd'之间存在差异)返回null并显示元素不存在,尽管它确实存在到window.abu不返回null并显示元素确实存在

这可能是我对某事的误解。。。
有人能给我解释一下吗?

你能确切地说明你是如何在你的代码中使用document.getElementById('abcd')vs
window.abcd
?这都是关于上下文/时间的。如果您使用的是jQuery,为什么还要麻烦使用
document.getElementById()
?您只需使用
$(“#myID”)
。。。此外,考虑使用<代码> $.GET(URL,函数(数据){…})<代码> > @ Luxelin我尝试过,并且它也不工作……Kevnb我现在将更新我的原始代码,逻辑没有意义…您的第一个条件测试是查看元素是否存在。如果它不存在,你就。。。使用
abcd.PerformCallback()
。。。这很令人困惑。。。什么是
abcd.PerformCallback