选择但不是模糊 - EXTJS

时间:2016-04-12 13:33:55

标签: extjs

我是ExtJS的新手我有以下代码行在select事件上工作正常,现在我也打算添加模糊事件。

autoResolve.on("select" || "blur", function (component, record, index) {
        var fieldSet = utils.getComponentFromMngr(component.id.split("~")[0]);
            if(autoResolveData.CURRSEL){ //Set previous selection property

                var xmlElem = fieldSet.DomainXML.documentElement.childNodes[1];
                    xmlElem.setAttribute("PR_DOMAINTYPE",autoResolveData.FILL_SUBTYP);
                    xmlElem.setAttribute("PR_DOMAINID", record.get("ITEMID"));
                    xmlElem.setAttribute("PR_DOMAINVALUE", record.data.TITLE);
                    fieldSet.DomainObj.push({PRDomainType:autoResolveData.FILL_SUBTYP,PRDomainID:record.get("ITEMID"),PRDomainValue:record.data.TITLE});
            }

它在选择事件上仍然正常工作,但在模糊事件上没有正常工作我在哪里出错请建议

1 个答案:

答案 0 :(得分:0)

"select" || "blur"将返回select,因为您可以在浏览器控制台中输入以下内容:

console.log("select" || "blur");

此外,"blur"事件没有record作为第二个参数。您必须查看如何获取record并使用有效的record参数调用该函数。

您想要达到的目标大致如下:

var myFunction = function (component, record, index) {
    var fieldSet = utils.getComponentFromMngr(component.id.split("~")[0]);
    if(autoResolveData.CURRSEL){ //Set previous selection property
        var xmlElem = fieldSet.DomainXML.documentElement.childNodes[1];
        xmlElem.setAttribute("PR_DOMAINTYPE",autoResolveData.FILL_SUBTYP);
        xmlElem.setAttribute("PR_DOMAINID", record.get("ITEMID"));
        xmlElem.setAttribute("PR_DOMAINVALUE", record.data.TITLE);
        fieldSet.DomainObj.push({PRDomainType:autoResolveData.FILL_SUBTYP,PRDomainID:record.get("ITEMID"),PRDomainValue:record.data.TITLE});
    }
};
autoResolve.on({
    select:myFunction,
    blur:function(component) {
        var record = ... // your special magic here
        return myFunction(component,record);
    }
});