我正在使用 CRM 2013 On 前提,其中有一个属性具有一个选项集(非全局),其文本和值为“虚拟条目”“0”。默认值未分配。
我的代码是用一些业务逻辑在这个选项集中添加选项。所以我可以通过 Javascript 在其中添加新选项。
当我通过 Javascript 在其中添加选项时,它不允许我更改值让我们说
Option1 val1 Option2 val1 添加然后它不允许我选择这些值,并且每次选择它们都会恢复为默认条目“--”并且什么都不会改变。
但是假设我添加了“Option1”“0”“Option2”“0”
作为文本和值,它们会很好地显示,选择其中任何一个会将文本更改为“虚拟条目”。
基本上,如果该值存在于选项列表中(它们是静态的,不是通过 JS 添加的),它就会接受并选择它并从中显示文本。
如果在静态选项列表中未找到该值,则不选择任何内容并显示默认“--”
我希望我清楚,如果有任何混淆,请告诉我。以下代码段在 CRM 2011 中有效,而在 CRM 2013 中无效。
// testing function
populateBundleLists: function () {
var bundleListControl = Xrm.Page.getControl("XXX_bundlelist");
var bundleOptions = bundleListControl.getAttribute().getOptions();
var bundleOption = bundleOptions[0];
bundleListControl.clearOptions();
// add some arbitrary values to control
for (var i = 1; i <= 7; i++) {
bundleOption.value = i;
bundleOption.text = 'Dummy bundle ' + i.toString();
bundleListControl.addOption(bundleOption, i - 1);
}
},