以下代码抛出错误。我尝试获取(警告)MS CRM 2013中的Optionset的值和选项,它成功地显示了所有内容,但之后显示错误。我附加了屏幕截图错误
function GetOptionsetLable()
{
var OptionSetControl = Xrm.Page.getAttribute("test_613a");
for(var intCounter=0; OptionSetControl .getOptions().length; intCounter++)
{
var backendvalue=OptionSetControl .getOptions()[intCounter].value;
alert(backendvalue.toString());
}
}
答案 0 :(得分:1)
function GetOptionsetLable()
{
var OptionSetControl = Xrm.Page.getAttribute("test_613a");
for(var intCounter=0; OptionSetControl .getOptions().length; intCounter++)
{
var backendvalue=OptionSetControl .getOptions()[intCounter].value;
alert(backendvalue.toString());
}
}
你的for循环永远不会结束,因为你没有告诉它何时停止。
OptionSetControl.getOptions().length
应该是:
intCounter < OptionSetControl.getOptions().length
完整代码:
function GetOptionsetLable()
{
var OptionSetControl = Xrm.Page.getAttribute("test_613a");
for(var intCounter=0; intCounter < OptionSetControl.getOptions().length; intCounter++)
{
var backendvalue=OptionSetControl.getOptions()[intCounter].value;
alert(backendvalue.toString());
}
}
答案 1 :(得分:0)
请记住,value
属性包含optionset数值,.text
属性包含标签。
你也可以使用较短的条件:
var options = Xrm.Page.getAttribute("test_613a").getOptions();
for (var i in options) {
alert(options[i].value);
}
我还创建了一个库,你可以在这里找到: