首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CRM 9-基于JS记录动态绑定HTML表/网格

CRM 9-基于JS记录动态绑定HTML表/网格
EN

Stack Overflow用户
提问于 2019-04-08 08:46:36
回答 1查看 1.5K关注 0票数 0

我正在动态CRM 9.0中的HTML页面上工作。我已经编写了一个Webresource,并通过JavaScript页面进行了调用。我的JavaScript中有一个函数从CRM实体中获取数据,如下所示,

代码语言:javascript
复制
var Query = "$select=ParameterValue,transactioncode,ParameterName&$filter= PhonceCallId/Id eq(guid'" + phoneid + "')";
 XrmSvcToolkit.retrieveMultiple({
    entityName: entity ,  
    odataQuery: Query,
    async: false,
    successCallback: successCallback,
    errorCallback: errorCallback
});

现在,针对PhoneCallId,我正在检索记录,请注意,这些记录本质上是动态的,这意味着每次命中获取的行数都不是固定的(我可能第一次得到3行,下一次得到5行等等)。

我想动态地将这些记录绑定到我的HTML页面中,就像一个具有头列的gridview,然后这些记录将在运行时绑定在那个网格视图上。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-08 09:17:36

有不同的方法你可以做到这一点。例如,这里是我的小提琴之一,它使用KnockoutJS来填充数据。在这个过程中,数据是静态的,这可以从CRM中动态填充,您可以显示每个页面曾经希望显示多少行。下面的代码只是Fiddle的参考

基本上,下面的代码是您从CRM获取数据到本地Array所需要的

代码语言:javascript
复制
var req = new XMLHttpRequest(); 
req.open("GET", Xrm.Page.context.getClientUrl() + "/api/data/v9.1/accounts?$select=accountnumber,emailaddress1,name&$filter=accountid ne null", true);
req.setRequestHeader("OData-MaxVersion", "4.0");
req.setRequestHeader("OData-Version", "4.0");
req.setRequestHeader("Accept", "application/json");
req.setRequestHeader("Content-Type", "application/json; charset=utf-8");
req.setRequestHeader("Prefer", "odata.include-annotations=\"*\"");
var tempArray = new array();
req.onreadystatechange = function() {
    if (this.readyState === 4) {
        req.onreadystatechange = null;
        if (this.status === 200) {
            var results = JSON.parse(this.response);
            for (var i = 0; i < results.value.length; i++) {
                var accountnumber = results.value[i]["accountnumber"];
                var emailaddress1 = results.value[i]["emailaddress1"];
                var name = results.value[i]["name"];
                tempArray.push(results.value[i]["accountnumber"],results.value[i]["emailaddress1"],results.value[i]["name"]);

            }
        } else {
            Xrm.Utility.alertDialog(this.statusText);
        }
    }
};
req.send();

普通HTML表添加数据。链接供参考

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55569447

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档