什么是Ext.id()?

时间:2011-02-21 21:50:23

标签: extjs

我无法在API文档中找到它或在不同的互联网搜索引擎查询结果上找到任何解释。

3 个答案:

答案 0 :(得分:12)

这是ExtJS内部用于为ExtJS创建的DOM元素生成唯一ID的函数。从我http://www.sencha.com的控制台:

> Ext.id
  function (e,D){return(e=Ext.getDom(e)||{}).id=e.id||(D||"ext-gen")+(++h)}
> Ext.id()
  "ext-gen22"
> Ext.id()
  "ext-gen23"
> Ext.id()
  "ext-gen24"

来自消息来源

请参阅here(向下滚动至Public Methods -> id)和here

/**
     * Generates unique ids. If the element already has an id, it is unchanged
     * @param {Mixed} el (optional) The element to generate an id for
     * @param {String} prefix (optional) Id prefix (defaults "ext-gen")
     * @return {String} The generated Id.
     */
    id : function(el, prefix){
        el = Ext.getDom(el, true) || {};
        if (!el.id) {
            el.id = (prefix || "ext-gen") + (++idSeed);
        }
        return el.id;
    },

答案 1 :(得分:4)

如果您因任何原因需要生成唯一ID,我过去做过的一件有用的事情就是做以下事情:

var id = Ext.id();
id = parseInt(id.replace("ext-gen", ""));
return id;

那将摆脱Ext.id()返回的String的“ext-gen”部分并给你一个int(如果你需要的话)。

答案 2 :(得分:0)

对于唯一身份证号码,您也可以这样做:

   var uniqueId = ++Ext.idSeed;