CRM2011无法在Javascript中检索查找过滤器中选定的值

时间:2014-06-27 08:51:53

标签: javascript dynamics-crm-2011

以下是该方案:

  1. 我在联系表单上添加了一个功能区按钮。点击后,它会加载一个模态对话框,如下所示:
  2. enter image description here

    1. 当我点击模态对话框上的自定义查找图标按钮时,我使用以下代码启动查找过滤器窗口:
    2. function OpenLookup() {
      
          var objectCode = "2";
      
          var url = serverURL+"/_controls/lookup/lookupinfo.aspx? AllowFilterOff=1&DefaultType=1&DefaultViewId={A9AF0AB8-861D-4CFA-92A5- C6281FED7FAB}&DisableQuickFind=0&DisableViewPicker=0&LookupStyle=single&ShowNewButton=1&Show PropButton=1&browse=false&currentObjectType=2&currentid={7D2D14AE-7EE1-E311-B136- 00155D02101E}&objecttypes=1%2c2";
      
          var lookUp = window.open(url, null,  "width=500,resizable=1,height=400,menubar=0,status=1,location=0,toolbar=0,scrollbars=1",  null);
          if (lookUp != null) {
              var selectedVal = lookUp.items[0].name;
      
          }
      }
      

      当我解析结果对象lookUp时,它没有任何变量items。所以我无法在查找过滤器窗口中检索选定的值。

      任何帮助都将不胜感激。

      感谢。

1 个答案:

答案 0 :(得分:0)

我是这样做的:

 var UpdatedAccountId;
 var UpdatedAccountName = "";
 var lookUp = window.showModalDialog(url, "entity", "dialogwidth: 450; dialogheight: 300; resizable: yes");         
 var updated = JSON.parse(lookUp);

for (i = 0; i < updated.items.length; i++) {
    if (updated.items[0].id != null) 
     {
            UpdatedAccountId = updated.items[0].id;       
     }
    if (updated.items[0].name != null)
     {
           UpdatedAccountName = updated.items[0].name;         
     }
    }