XSP.getElementById vs document.getElementById

Nav*_*een 0 javascript xpages

XSP.getElementById和之间有什么区别document.getElementById?在我的测试中,两者似乎都返回相同的值(存储在字段中的值).在编写XPage时应该首选哪一个?

Pan*_*amo 6

编辑

XSP.getElementByIddojo.byId我认为在更广泛的浏览器中工作的相同document.getElementById.

以下是来源XSP.getElementById:

   /**
    * Convenience function for retrieving an element given its id in a browser independent manner.
    */
    this.getElementById = function x_gbi(elementId){
        return dojo.byId(elementId);
    }
Run Code Online (Sandbox Code Playgroud)

我想更好的未来XPage支持使用它可能是一个好主意XSP.getElementById(因为它们可能会改变它)而不是dojo.byId.我一直在使用,dojo.byId因为它更短.document.getElementById永远不应该在XPage中使用,因为我们有dojo.byId.

更新

从Dojo 1.7开始,语法要复杂得多:

require(["dojo/dom"], function(dom){
    // fetch a node by id="someNode"
    var node = dom.byId("someNode");
});
Run Code Online (Sandbox Code Playgroud)

今天我的同事指出,Dojo 2不再支持目前简单的召唤方式dojo.byId.这意味着XSP.getElementById绝对是方法,我们应该在require每次使用Dojo和ND9时开始使用新的语法.