Salesforce -- 自定义放大镜查找界面

如图,重写放大镜的查找界面

这里写图片描述

VisualForce:

<script type="text/javascript">

    function getObjectPrefix(objectName) {
        sforce.connection.sessionId = '{!$Api.Session_ID}';
        var KeyPrefixValue = sforce.connection.describeSObjects([objectName]);
        var clientPrefix = KeyPrefixValue[0].keyPrefix;
        console.log('clientPrefix:' + clientPrefix);
        return clientPrefix;
    }

    var materielPrefixid = getObjectPrefix("Account");

    function openLookup(baseURL, width, modified, searchParam) {
        var originalbaseURL = baseURL;
        var originalwidth = width;
        var originalmodified = modified;
        var originalsearchParam = searchParam;
        var showcustomlookup = false;
        var lookupType = baseURL.substr(baseURL.length - 3, 3);
        console.log('lookupType:' + lookupType);
        if (modified == '1') baseURL = baseURL + searchParam;
        console.log('searchParam:' + searchParam);
        console.log('materielPrefixid:' + materielPrefixid);

        //查找客户
        if (lookupType == materielPrefixid) {
            var urlArr = baseURL.split("&");
            var txtId = '';
            if (urlArr.length > 2) {
                urlArr = urlArr[1].split('=');
                txtId = urlArr[1];
            }

            baseURL = "/apex/AccountLookUp?txt=" + txtId;

            baseURL = baseURL + "&frm=" + escapeUTF("{!$Component.myForm}");
            if (modified == '1') {
                baseURL = baseURL + "&lksearch=" + searchParam;
            }

            var company = '';
            var type = 'OppProduct';
            var product = '';

            var buValue = '';
            var bustr = decodeURIComponent(txtId).replace("materielId", "buValueId");
            console.log('plIdstr  74:' + bustr);
            //获取选项列表元素
            var selectelementbu = document.getElementById(bustr);
            console.log('selectelementbu 77:' + selectelementbu);
            if (selectelementbu != null) {
                if (selectelementbu.children.length > 1) //有值
                {
                    var valueIndex = selectelementbu.selectedIndex;
                    console.log(valueIndex);
                    if (valueIndex > 0) {
                        buValue = selectelementbu.options[valueIndex].value;
                        console.log('buValue:' + buValue);
                    }
                }
            }

            var plId = '';
            var plIdstr = decodeURIComponent(txtId).replace("materielId", "selectpl");
            console.log('plIdstr  74:' + plIdstr);
            //获取选项列表元素
            var selectelement = document.getElementById(plIdstr);
            console.log('selectelement:' + selectelement);
            if (selectelement != null) {
                if (selectelement.children.length > 1) //有值
                {
                    var valueIndex = selectelement.selectedIndex;
                    console.log(valueIndex);
                    if (valueIndex > 0) {
                        plId = selectelement.options[valueIndex].value;
                    }
                }
            }

            baseURL = baseURL + "&type=" + type;
            baseURL = baseURL + "&company=" + company;
            baseURL = baseURL + "&buValue=" + buValue + "&plId=" + plId;
            baseURL = baseURL + "&product=" + product;

            if (txtId.length > 0) {
                showcustomlookup = true;
            }
        }
        if (showcustomlookup) {
            openPopup(baseURL, "lookup", 350, 480, "width=" + width + ",height=480,toolbar=no,status=no,directories=no,menubar=no,resizable=yes,scrollable=no", true);
        } else {
            if (modified == '1') originalbaseURL = originalbaseURL + originalsearchParam;
            openPopup(originalbaseURL, "lookup", 350, 480, "width=" + originalwidth + ",height=480,toolbar=no,status=no,directories=no,menubar=no,resizable=yes,scrollable=no", true);
        }
    }
    </script>
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值